arguments对象是一个函数对象,即可以表示函数本身,也可以表示函数的参数列表.它和Function是分不开的。因为arguments这个对象不能显式创建,arguments对象只有函数开始时才可用。arguments对象并不是一个数组,但是访问单个参数的方式与访问数组元素的方式相同.
主要属性:
arguments[i] , i=0,1,2... //某个参数
arguments.length //函数参数的个数
arguments.callee //代表函数本身
使用:
1.定义函数时可不定义参数,调用时才指定实参.
function a() { console.info(arguments[0]); } a('helloWorld');
2.递归
//sum = 6! var sum = function (n) { if (1 == n) { return 1; } else { return n * arguments.callee(n - 1); } } console.info(sum(6));