请教一个Nodejs匿名方法形参的问题~
请教一个Nodejs匿名方法形参的问题~
var f0 = function test(a, b, c){
console.log(arguments.length); // 实参个数
console.log(test.length);· // 形参个数
}
费匿名怎么获得形参个数呢
var f1 = function(a, b, c){
console.log(arguments.length); // 实参个数
console.log(???.length);· // 形参个数???
}
4 回复
arguments.callee
thx的说~
在 Node.js 中,你可以通过 arguments
对象来获取传入函数的实际参数个数。而对于命名函数(如 function test(a, b, c)
),可以通过 test.length
来获取其声明时的形参数目。
对于匿名函数,你无法直接通过名称来访问它的 length
属性,因为匿名函数没有名字。不过,你可以使用 .length
属性来获取函数定义时的形参数目。因此,你可以在匿名函数内部通过 this.length
来获取它声明时的形参数目。
以下是一个示例代码,展示了如何在匿名函数中获取形参数目:
var f1 = function(a, b, c) {
console.log('实际参数个数:', arguments.length); // 输出实际传入的参数个数
console.log('形参数目:', this.length); // 输出声明时的形参数目
};
f1(1, 2); // 调用时只传递了两个实参
在这个例子中:
arguments.length
会输出实际传递给函数的参数个数。this.length
会输出函数定义时的形参数目,即使调用时传递的实参数量不同。
希望这能解答你的问题。如果你有任何其他疑问,请随时提问!