WEB开发者-分享WEB开发知识,让开发变得更简单!

javascript中怎么获取方法(函数)的参数个数

在javascript中,可以使用arguments对象的length属性来获取方法(函数)的参数个数,该属性可以获取函数的实参个数;使用函数对象的length属性来获取函数的形参个数。

javascript中怎么获取方法(函数)的参数个数

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

方法(method)是通过对象调用的JavaScript函数。也就是说,方法也是函数,只是比较特殊的函数。

在JavaScript中,可以使用arguments 对象的 length 属性可以获取函数的实参个数。arguments 对象只能在函数体内可见,因此 arguments.length 也只能在函数体内使用。

使用函数对象的 length 属性可以获取函数的形参个数。该属性为只读属性,在函数体内、体外都可以使用。

示例

下面示例设计一个 checkArg() 函数,用来检测一个函数的形参和实参是否一致,如果不一致则抛出异常。

function checkArg(a) {  //检测函数实参与形参是否一致
    if (a.length != a.callee.length)  //如果实参与形参个数不同,则抛出错误
    throw new Error("实参和形参不一致");
}
function f(a, b) {  //求两个数的平均值
    checkArg(arguments);   //根据arguments来检测函数实参和形参是否一致
    return ((a * 1 ? a : 0) + (b * 1 ? b : 0)) / 2;  //返回平均值
}
console.log(f(6));  //抛出异常。调用函数f,传入一个参数

说明:

arguments 对象表示函数的实参集合,仅能够在函数体内可见,并可以直接访问。

arguments 对象的 length 属性和 callee 属性最为常用:

  • 使用 length 属性可以获取函数的实参个数。arguments 对象只能在函数体内可见,因此 arguments.length 也只能在函数体内使用。

  • 使用 callee 属性可以引用当前 arguments 对象所在的函数。使用 callee 属性可以在函数体内调用函数自身。在匿名函数中,callee 属性比较有用。例如,利用它可以设计递归调用。

【推荐学习:javascript高级教程】

以上就是javascript中怎么获取方法(函数)的参数个数的详细内容,更多请关注web开发者其它相关文章!

本文链接:https://www.webkfz.com/WEBkF/wangyejishu/156988.html

版权声明:站内所有文章皆来自网络转载,只供分享作用,不代表本站的观点!

发表评论 共有 0 条评论)

联系客服
网站客服 业务合作 QQ
1244305267
公众号
公众号
公众号
返回顶部