最近写代码学习了this,这个非常好用啊,今天拿出来给大家分享一下,根据我的理解以及前辈们的讲解
this
关键字代表当前执行上下文中的对象。它通常指向调用函数的对象,但其值可能取决于函数的调用方式。
- 全局上下文中的
this
:
- 在浏览器中,全局上下文中的
this
指向全局对象window
。 - 在 Node.js 中,全局上下文中的
this
指向全局对象global
- 函数上下文中的
this
:
- 在函数内部,
this
可能指向不同的对象,取决于函数的调用方式。 - 如果函数作为普通函数调用,
this
指向全局对象。 - 如果函数作为对象的方法调用,
this
指向调用该方法的对象。 - 如果函数作为构造函数调用(使用
new
关键字),this
指向新创建的对象。 - 如果使用
call()
、apply()
或bind()
显式绑定了this
,则this
将指向绑定的对象。
- 箭头函数中的
this
:
- 箭头函数没有自己的
this
,它的this
值继承自包含它的上下文。 - 在箭头函数中使用
this
,实际上是指向定义时所在的词法作用域中的this
值。
因此,this
的含义取决于函数的调用方式和上下文环境。
谢谢大家观看,我是小辉,谢谢大家观看