神奇的arguments

话不多说,直接上实例:

 

arguments.length 实参个数

arguments.callee.length 形参数个数

如何把一个数组的每一个元素当成函数的各个参数

fn.apply( null, array);

function func( a, b, c, d, e ){
    console.log( "real params length : " + arguments.length);
    console.log( "expected params length : " + arguments.callee.length );
    for(var i=0, il=arguments.length; i<il; i++){
       console.log(  "params[" + i  + "]  = " + arguments[i] );
    }
}

var arr = [ 1, 2, 3, 4 ];
func.apply( null, arr );

func();
 
看结果:
LOG: real params length : 4 
LOG: expected params length : 5 
LOG: params[0]  = 1 
LOG: params[1]  = 2 
LOG: params[2]  = 3 
LOG: params[3]  = 4 
LOG: real params length : 0 
LOG: expected params length : 5 
 
arguments不是数组,但参数可以通过数组的形式传进来.

func.apply的第一个参数(null)不可以少哦

author: mooring
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值