您的位置:首页 > 其它

改变函数内部的this指针的指向

2018-02-28 20:32 447 查看
每个函数都包含两个非继承来的方法call()和apply();使用call()或者apply(),可以改变this的指向;
假设要改变fn函数内部的this的指向,指向obj,那么可以fn.call(obj);或者fn.apply(obj);

call和apply的区别:
call和apply的区别在于参数,他们两个的第一个参数都是一样的,表示调用该函数的对象;
apply的第二个参数是数组,是[arg1,arg2,arg3]这种形式,而call是arg1,arg2,arg3这样的形式。

另外还可以用bind函数:
var bar=fn.bind(obj);
那么fn中的this就指向obj对象了,bind函数返回新的函数,这个函数内的this指针指向obj对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐