arguments对象与数组类似,可以使用length属性确定函数传进多少参数。
var f = function m(x) {
if (x <= 1) {
return 1;
} else {
return x * m(x - 1);
}
};
var f = function (x) {
if (x <= 1) {
return 1;
} else {
return x * arguments.callee(x - 1);
}
};