JavaScript中arguments.length与arguments.callee.length个人探究

本文探讨JavaScript中的arguments对象,它不是数组但具有length属性,用于获取函数调用时的实参数量。arguments.length表示实参长度,帮助检查参数数量。arguments.callee.length则为函数定义时的形式参数数量。文中通过示例解析arguments对象如何在实参和形参间起到桥梁作用,指出arguments对象是函数调用时创建的,它不是实参引用,而是形参的引用,保存了实参传入的值。
摘要由CSDN通过智能技术生成

首先,arguments是JavaScript里的一个内置对象,说arguments像个数组,是因为它和NodeList类似,都拥有length属性,也可以写成类似数组的样式arguements[参数索引值] 来代表传给函数的参数,但它没有push和pop等数组方法,因此它不能算是数组,它只是Arguments对象的一个实例。其次,arguments只有在function体内才有意义。

       arguments.length  表示实参长度。 JS不会主动为你判断你到底给函数传了多少个参数,如果你传多了,多余的部分就不会被使用;如果你传少了,那么没接收到实参值的形参的值就是undefined。这时,我们可以借助arguments的length属性来检测调用函数时是否使用了正确数目的实际参数。此外,引用一个形式参数可以用参数名,也可以用arguments[ i ]数组形式,其中arguments[ i ]表示第i 个参数。

       arguments还为我们提供了这样一种可能,就是为一个函数传递任意数目的实际参数:
       比如说,我想判断你传给我的一些数字的大小,并取出最大的那个,对,你传多少参数都行,只要是数字(因为传的是数字函数内部就不用我再判断类型了,呵呵)。如下:

JavaScript代码:

<script language="JavaScript"  type= "text/javascript">

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值