美文网首页
js bind,call,apply

js bind,call,apply

作者: 工藤新二_cad2 | 来源:发表于2018-11-30 10:55 被阅读0次

在JavaScript中,call、apply和bind是Function对象自带的三个方法,这三个方法的主要作用是改变函数中的this指向。

改变函数在执行是this的指向

call、apply、bind方法的共同点和区别:

apply 、 call 、bind 三者都是用来改变函数的this对象的指向的;

apply 、 call 、bind 三者第一个参数都是this要指向的对象,也就是想指定的上下文(函数的每次调用都会拥有一个特殊值——本次调用的上下文(context)——这就是this关键字的值。);

apply 、 call 、bind 三者都可以利用后续参数传参;

bind是返回对应函数,便于稍后调用;apply、call则是立即调用 。

func.call(this, arg1, arg2);call传递序列参数

func.apply(this, [arg1, arg2])//apply传递数组

apply 、 call 、bind 三者都是用来改变函数的this对象的指向的;

apply 、 call 、bind 三者第一个参数都是this要指向的对象,也就是想指定的上下文;

apply 、 call 、bind 三者都可以利用后续参数传参;

bind 是返回对应函数,便于稍后调用;apply 、call 则是立即调用 。

指定上下文,this指向的对象就是上下文,this对象就是上下文。

相关文章

网友评论

      本文标题:js bind,call,apply

      本文链接:https://www.haomeiwen.com/subject/wnvccqtx.html