arguments物件獲取給函式傳遞的實際引數

admin發表於2017-03-31

avascript中的函式和c#或者java中的方法區別之一就是實際應用函式的時候傳遞的引數可以無需和宣告時候定義的形式引數對應。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼
function func(x,y,z){
  var num=x+y;
  console.log(num);
}
func(1,2);

上面的程式碼中,雖然函式宣告中有三個形式引數,但是實際傳遞兩個引數也是完全可以的。

我們可以使用arguments物件來獲取函式實際傳遞的引數,此物件類似於一個陣列,可以使用length屬性獲取傳遞實參的個數,也可以使用索引方式獲取傳遞的具體引數,程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼
function func(x,y,z){
  for(var index=0;index<arguments.length;index++){
    console.log(arguments[index]);
  }
}
func(1,2,3);

上面的程式碼可以輸出實際傳遞給函式的每一個引數。

相關文章