4、JS函數(shù)

一、函數(shù)的寫法
1. 定義功能

function 關(guān)鍵字 代表定義功能(函數(shù))
func 功能的名字, 滿足標(biāo)識(shí)符的條件即可,可以修改的
1. 必須是數(shù)字、字母、下劃線、$ 組成
2. 不能重名
3. 不能以數(shù)字開頭
( ) 不能省略
{ } 代表功能中的代碼,相當(dāng)于封裝到了當(dāng)前功能中

// 原因: 定義功能 是在所有語(yǔ)句之前 執(zhí)行的,系統(tǒng)規(guī)定的
function func()
{
    console.log("如來(lái)神掌!");
}
func( )  // 調(diào)用
  1. 使用功能
    格式: 功能名( )
    func( )
    彈出一個(gè)輸入框: prompt 就是1個(gè)函數(shù),只不過(guò)這個(gè)是系統(tǒng)寫的,我們直接使用
    prompt( )
3.函數(shù)的第2種情況: 帶輸入的
(a) 代表 【調(diào)用者】傳遞給函數(shù)的 信息,自動(dòng)存儲(chǔ)到空間a(自動(dòng)分配的)中
function func(a)
{
    document.write(a)
}
// 調(diào)用時(shí),將數(shù)據(jù) 傳遞給功能 func
func(100)
func(90)
4.函數(shù)的第2種情況: 帶輸入的, 有多個(gè)輸入
(a, b) 代表 【調(diào)用者】傳遞給函數(shù)的 信息,自動(dòng)存儲(chǔ)到空間a, b(自動(dòng)分配的)中

function func(a, b)
{
    // a: "哈哈"       b: 90
    // a + b ===>  "哈哈" + 90  ===> "哈哈90"
    document.write(a + b)
}

// 調(diào)用時(shí),將數(shù)據(jù) 傳遞給功能 func
// 傳遞數(shù)據(jù)的規(guī)定是: 100 ==> a  90 ===> b    一一對(duì)應(yīng)的
func("哈哈", 90)
5.函數(shù)的輸出
function func()
{
    return 5;
 // return 代表返回。整個(gè)函數(shù)立即終止,后面的代碼全部忽略不計(jì)
}

var a = func();
document.write( a );
// func() 代表調(diào)用功能,它的【整體的值】是  return 后面【表達(dá)式的值】
// document.write(  func()  )
6.函數(shù)的運(yùn)用

思路:
// 帶飯: 傳入錢 和 飯的類別(面條 或 蓋飯) 面條: 80一碗,炸醬面 蓋飯: 120一碗,魚香肉絲
// 要求: 用 return 返回買的菜
// money 錢
// type 類別

function fan(money, type)
{
    if (type == "面條")
    {
         if (money >= 80)
         {
             return "炸醬面";
         } 
         else 
         {
            return "錢不夠,你自己去買吧!"
         }
    }
    else if (type == "蓋飯")
    {
         if (money >= 120)
         {
             return "魚香肉絲";
         } 
         else 
         {
            return "錢不夠,你自己去買吧!"
         }
    }
}
document.write(money);
★練習(xí)解答

/ 編寫函數(shù),求一個(gè)正數(shù)的n次方
// 正數(shù)的n次方 ==> 正數(shù) * 正數(shù) * 正數(shù) * ... * 正數(shù) n次

function func(a, n)
{
    var sum = 1;
    for (var i = 1; i <= n; i++)  // 循環(huán)n次
    {
        sum = sum * a;
    }
    return sum;   // 返回結(jié)果
}
document.write( func(-2, 3) );
 
var x = -1, n = 3 

// 說(shuō)明: 傳入正數(shù),求出對(duì)應(yīng)的n次方,否則 返回-1
function num1(x, n)
{
    if (x > 0)
    {
        return Math.pow(x, n);
    }
    else
    {
        // document.write("請(qǐng)輸入正數(shù)!");
        return -1;
    }   
}

document.write( num1(x, n) );

function func(a, n)
{
    return( Math.pow(a,n) )
}

func(2, 3)

// 2^3 + 3^2
var a = func(2,3) + func(3,2)

document.write(a)

// 【練習(xí)】 編寫函數(shù),求4個(gè)數(shù)的平均值,要求使用返回值

function avg(a, b, c, d)
{
    var r = (a + b + c + d) / 4;
    return r;
} 
document.write(  avg(4,3,2,1) );

求1個(gè)數(shù)的階乘:
嘆號(hào)表示階乘,如4! = 1 * 2 * 3 * 4

function jiecheng(a)
{
    var sum = 1;
    for (var i = 1; i <= a; i++)
    {
        sum = sum * i;
    }
    return sum;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 136.泛型 泛型代碼讓你可以寫出靈活,可重用的函數(shù)和類型,它們可以使用任何類型,受你定義的需求的約束。你可以寫出...
    無(wú)灃閱讀 1,658評(píng)論 0 4
  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile麗語(yǔ)閱讀 4,096評(píng)論 0 6
  • 前言 前幾天課堂上做了一個(gè)小 demo,隨機(jī)5個(gè)不相等的整數(shù),今天想和大家分享一下,希望能幫助大家!老規(guī)矩,先來(lái)看...
    cld_bert閱讀 657評(píng)論 1 0
  • 今天特別特別冷,我的水瓶灌滿開水,拿在手里也就半個(gè)小時(shí)左右的功夫就會(huì)變冷,再過(guò)一會(huì)兒簡(jiǎn)直就變成冰水了。 但是中午的...
    周興哲閱讀 483評(píng)論 0 0
  • 目標(biāo): 1、有個(gè)健康智慧的寶寶。 2、財(cái)富目標(biāo)8月份收入2萬(wàn)元。 感恩冥想: 1、感恩父母的養(yǎng)育之恩,祝爸爸媽媽公...
    孫煜涵閱讀 164評(píng)論 0 2

友情鏈接更多精彩內(nèi)容