关于javascript中apply和call方法的区别
1个回答
2017-08-13 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
ECMAScript规范给所有函数都定义了Call()与apply()两个方法,call与apply的第一个参数都是需要调用的函数对象,在函数体内这个参数就是this的值,剩余的参数是需要传递给函数的值,call与apply的不同就是call传的值可以是任意的,而apply传的剩余值必须为数组.
举例:
//apply用法
* var a1 = sub.apply(add, [4, 2]);
*var a2= add.apply(sub, [4, 2]);
//call用法
var a1 = sub.call(add, 4, 2);
var a2= add.call(sub, 4, 2);
举例:
//apply用法
* var a1 = sub.apply(add, [4, 2]);
*var a2= add.apply(sub, [4, 2]);
//call用法
var a1 = sub.call(add, 4, 2);
var a2= add.call(sub, 4, 2);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询