this -- apply或call调用
Posted Lulin1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了this -- apply或call调用相关的知识,希望对你有一定的参考价值。
apply 和 call 这两个方法可以切换函数执行的上下文环境,也就是改变this绑定的对象。apply和call比较类似,区别在于传入参数时一个要求是数组,一个要求是分开传入。所以我们以apply为例:
var name = "window"; var someone = { name: "Bob", showName: function(){ alert(this.name); } }; var other = { name: "Tom" }; someone.showName(); //Bob someone.showName.apply(); //window someone.showName.apply(other); //Tom
可以看到,正常访问对象中方法时,this指向对象。使用了apply后,apply无参数时,this的当前对象是全局,apply有参数时,this的当前对象就是该参数。
以上是关于this -- apply或call调用的主要内容,如果未能解决你的问题,请参考以下文章