JavaScript函數(shù)

JavaScript函數(shù)

一、函數(shù)的作用

通過函數(shù)可以封裝任意多條語句,而且可以在任何地方、任何時候調(diào)用執(zhí)行。

二、函數(shù)的定義

函數(shù)使用function聲明,后跟一組參數(shù)一級函數(shù)體,語法如下:
function functionName([arg0,arg1,…argn]){
statements
}

說明:
1、functionName是要定義的函數(shù)名,屬于標(biāo)識符
2、[]中的arg0,arg1,…argn為函數(shù)的參數(shù),不是不需的
3、[]只說明里面的內(nèi)容不是必須的,它不是語法

三、函數(shù)的調(diào)用

語法:
函數(shù)名([arg1,arg2,…argn])

//聲明一個函數(shù)
function myFun(){
    alert("我是一個函數(shù)");
}
//調(diào)用函數(shù)
myFun();


//聲明一個帶有參數(shù)的函數(shù)
function add(num1,num2){
    var sum=num1+num2;
    alert(num+'和'+num2+'的和是'+sum);
}
add(3,5);

四、函數(shù)的返回值

任何函數(shù)在任何時候都可以通過return語句后跟要返回的值來實現(xiàn)返回值。

說明:
1、函數(shù)會在執(zhí)行完return語句之后停止并立即退出。
2、return語句也可以不帶有任何返回值,一般用于需要提前停止函數(shù)執(zhí)行而又不需要返回值的情況下。

function add(num1,num2){
    var sum=num1+num2;
    return sum;
}

console.log(add(3,5));
alert(add(3,5));
var s=add(3,5);
console.log(s);
document.write(s);


function myFunction(arg){
    //如果arg是非數(shù)字,不做任何操作;否則返回arg的2倍
    if(isNaN(arg)){
        return;
    }
    return arg*2;
}
myFunction("abc");

五、JavaScript中的參數(shù)

arguments:
ECMAScript中的參數(shù)在內(nèi)部用一個數(shù)組來表示,在函數(shù)體內(nèi)通過arguments對象來訪問這個數(shù)組參數(shù)。

說明:
1、arguments對象只是與數(shù)組類似,并不是Array的實例。
2、[] 語法訪問它的每一個元素。
3、length屬性確定傳遞參數(shù)的個數(shù)。

function inner(num1,num2){
    console.log(num2);
}
inner(10); //undefined


function inner1(){
    //arguments對象管理參數(shù)
    console.log(arguments.length);
    console.log(arguments[0]);//索引是從0開始的正整數(shù)  10
    console.log(arguments[2]);//undefined
}
inner1(10,5);//2


function add(num1,num2){
    console.log(num1);
}
add(55,88);//55 

/**
 * 嚴(yán)格模式:如果聲明了嚴(yán)格模式,即使通過arguments的形式修改了參數(shù),還是原來的值;
 * 在非嚴(yán)格模式下,arguments可以通過下標(biāo)的形式修改傳遞進(jìn)來的參數(shù)。
 */ 
function add1(num1,num2){
    arguments[0]=99;
    console.log(num1);//99
}
add(55,88);//99

求任意一組數(shù)的平均值:

function getAvg(){
    //console.log(arguments.length);
    var sum=0,len=arguments.length,i;
    for(i=0;i<length;i++){
        //console.log(arguments[i]);//拿到每個數(shù):5,66,45,32,88
        //sum=sum+arguments[i];
        sum+=arguments[i];
    }
    return sum/len;
}
var avg = getAvg(5,66,45,32,88);
console.log(avg);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

  • 長久以來,面向?qū)ο笤?JavaScript 編程范式中占據(jù)著主導(dǎo)地位。不過,最近人們對函數(shù)式編程的興趣正在增長。函...
    神刀閱讀 564評論 0 0
  • 函數(shù)函數(shù)定義與調(diào)用變量作用域全局變量方法高階函數(shù)閉包箭頭函數(shù)$generator$ 函數(shù) 函數(shù)定義與調(diào)用 定義函數(shù)...
    染微言閱讀 699評論 0 5
  • 本文是大神廖雪峰的JavaScript教程學(xué)習(xí)筆記。并不是教程,如有需要,請前往廖雪峰大神大博客. 一、函數(shù)定義和...
    0o凍僵的企鵝o0閱讀 576評論 1 3
  • 在JavaScript中,函數(shù)即對象,程序可以隨意操控它們。比如,JavaScript可以把函數(shù)賦值給變量,或者作...
    kissLife閱讀 1,063評論 0 0
  • 函數(shù)是由這樣的方式進(jìn)行聲明的:關(guān)鍵字 function、函數(shù)名、一組參數(shù),以及置于括號中的待執(zhí)行代碼。 JavaS...
    Castiel_Z閱讀 324評論 0 0

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