函式的引數arguments物件
阿新 • • 發佈:2019-01-30
1、函式的引數arguments 物件
-- arguments 表示函式的實際引數(與形參無關)
// js中 函式的引數:形參、實參 function test(a,b,c,d){ // 函式名.length 等價於 arguments.callee.length,因為arguments.callee代表函式本身, 程式開發中建議使用後者 console.log(test.length); // 4 ,函式形式引數的數量 // 函式的實際引數,內部就是用一個數組去接收函式的實際引數 // arguments 物件 可以訪問函式的實際引數 // arguments 物件 只能在函式的內部訪問和使用 console.log(arguments.length); // 獲取 函式 的實參 的數量 test(10,20) 輸出為:2 console.log(arguments[0]); // 獲取第一個 實參 的值 test(10,20) 輸出為:10 console.log(arguments[1]); // 獲取第二個 實參 的值 test(10,20) 輸出為:20 } test(10,20);
2、callee函式(回撥函式屬性)
-- arguments 物件的祕密屬性,callee屬性
--這個屬性比較奇怪,它能返回arguments物件所屬的函式的引用,這相當於在自己的內部呼叫自己
-- arguments 物件用得最多的還是做遞迴操作
function fact(num){
if(num <= 1){
return 1;
}else{
return num * arguments.callee(num-1);
}
}
console.log(fact(5)); // 120