js arguments 内置对象
1.arguments是js的内置对象。
2.在不确定对象是可以用来重载函数。
3.用法如下:
function goTo()
{
var i=arguments.length;
alert(i);
for(var m=0;m<i;m++)
{
alert(arguments[m]);
}
}
goTo('Hello','World');
输出结果:
2;
Hello;
World;
JavaScript中arguments函数对象是该对象代表正在执行的函数和调用它的函数的参数。使用方法:
[function.]arguments[n ]
其中function是可选项。当前正在执行的 Function 对象的名字。
n是必选项。要传递给 Function 对象的从0开始的参数值索引。
不能显式创建 arguments 对象。arguments 对象只有函数开始时才可用。函数的 arguments 对象并不是一个数组,访问单个参数的方式与访问数组元素的方式相同。索引 n 实际上是 arguments 对象的 0…n 属性的其中一个参数。
callee 是 arguments 对象的一个属性,其值是当前正在执行的 function 对象。它的作用是使得匿名 function 可以被递归调用。下面以一段计算斐波那契序列(Fibonacci sequence)中第 N 个数的值的代码来演示 arguments.callee 的使用,见
function fibonacci(num) {
return (function(num) {
if (typeof num !== "number") return -1;
num = parseInt(num);
if (num < 1) return -1;
if (num == 1 || num == 2) return 1;
return arguments.callee(num - 1) + arguments.callee(num - 2);
})(num);
}
fibonacci(100);