求函数的参数个数

求函数的参数个数方法1

<script type="text/javascript">
function f()
{
    var length=arguments.length;
    console.log(length);
}
f();
</script>

这种方法就得在函数调用的时候传入实参才有输出结果。如:f('a','b')   //2

如果在行参里写是输不出个数的。试试用下面一种方法。

求函数的参数个数方法2

<script type="text/javascript">
function f(a,d)
{
    console.log(f.length);
}
f();
</script>

这时候就能输出函数有2个参数了。这里调用了f.length;来求得函数的参数个数。如果函数改名了,那函数内部的函数名也得改。为了减少耦合性,采用函数对象arguments的callee属性来调用函数本身。优化如下

<script type="text/javascript">
function f(a,d)
{
    console.log(arguments.callee.length);
}
f();//2
</script>

 关键点是用"functionName.length" 来求得参数个数。

posted @ 2013-01-29 15:03  TL_LEE  阅读(546)  评论(0编辑  收藏  举报