这是函数的最通常用法,属于全局性调用,这是this就指全局(浏览器中为window,node中为global)
通过这个函数生成一个新对象(object)。这是this就指这个新对象。
4.apply调用:
apply()是函数对象的一个方法,它的作用是改变函数的调用对象。因此,this指的就是这第一个参数。
通过上下两图代码的调整可以证明此时this就是全局对象
此时的this指的是obj这个对象
JS中,我们通过new关键词来调用构造函数:此时this会绑定在该新对象上。
4.apply调用
此时this指的就是这一个参数obj。
如何确定thi函数的指向:
严格模式下,(设置了 “use strict"),this为undefined
new test()——>新的创建的对象 以构造函数形式调用
p.call(obj)——> obj 使用call和apply方法调用
this的最终指向始终是调用的他的对象。
默认指向定义它时,所处上下文的对象的this指向(这里指的是整个箭头函数处在那个上下文),偶尔没有上下文对象时指向window.
即使是call,apply,bind等方法也不能改变箭头函数this的指向。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。