如何理解和熟练运用js中的call及apply

 我来答
束秀逸5v
2015-07-07 · 超过19用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:21万
展开全部
//先看一段js代码,可以在页面看一下打印出的答案,为什么会打印这些 下面注释有解释原因,其实就是把当前的对象的this改变了
var age = 15;
function fn(a,b){
console.log(a);
console.log(b);
console.log(this.age)
console.log(this.len)
}
var str = {len:"长度",width:"宽度",age:5};
fn.call(str,"age","len","A","B");
/*call 以fn.call(obj,'a','b') 为例 第一步 函数fn的this指向了obj 第二部 fn的参数换成了obj里的参数 fn{'a','b'} ,这里的obj指的是上面的str*/
/*apply方式 用法一样只是传的参数已数组形式写 fn.apply(obj,["a","b"])*/
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式