纵横研究院前端基础技术专题社区

this的指向问题

2019-12-30  本文已影响0人  亦晓寒

this永远指向函数运行时所在的对象,而不是函数被创建时所在的对象。

一.普通函数中的this指向

1.作为函数名调用

函数作为全局对象调用,this指向全局对象。

2.作为方法调用

函数作为对象的一个属性,成为该对象的一个方法,this指向该对象。

3.作为构造函数使用

用new调用的函数,this指向被绑定的那个对象上面。

4.apply或call被调用

函数this指向apply或call调用时的第一个参数。

二.箭头函数中的this

箭头函数的this指向父级作用域。

总结:this指向永远是最后调用它的对象。

下面的例子中,最后一个调用函数的对象是b,所以这里的this指向b对象。

下面例子中,最后一个调用函数的对象是c,而c是全局定义的变量,所以这里的this指向windows。

上一篇下一篇

猜你喜欢

热点阅读