JS中call和apply方法的区别

1、call 方法 

先上个小demo:

function add(a,b) 
{ 
alert(a+b); 
} 
function sub(a,b) 
{ 
alert(a-b); 
} 
add.call(sub,2,1);

相信看完这个demo大家都明白了,就是用 add()方法来替换 sub() 方法 ,add.call(sub,2,1) 等价于add(2,1) ,所以运行结果为:alert(3)


2、apply方法

apply方法其实和call方法用途一样,只是在参数上略有区别:(即apply方法传入的第二个参数必须是一个参数数组,也就是说如果该apply方法不止于两个参数的话,则必须将第二个参数之后的所有参数以一个数组的形式传进来,第一个参数仍然和call方法保持一样

obj.call(arg,aaa,bbb,ccc)方法对应的apply写法为:obj.apply(arg,[aaa,bbb,ccc]),此两者所实现的效果是一样一样的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值