this 是 JavaScript 中动态确定的关键字,指向函数调用时的上下文对象,具体取决于调用方式:普通调用时非严格模式指向全局对象、严格模式为 undefined;作为对象方法调用时指向该对象;构造函数或 class 实例方法中指向新创建的实例;箭头函数无自身 this;可通过 call/apply/bind 显式绑定。
this 是 JavaScript 中的一个关键字,它不是一个固定值,而是在函数执行时动态确定的,指向**当前函数调用的上下文对象**。它的具体指向完全取决于函数**如何被调用**,而不是函数定义的位置或方式。
在非严格模式下,直接调用函数(如 fn()),this 指向全局对象(浏览器中是 window,Node.js 中是 global);在严格模式下,this 为 undefined。
的 this当函数作为对象的属性被调用(如 obj.method()),this 指向该对象(即点号左边的对象)。
使用 new 调用函数时,this 指向新创建的实例对象;在 class 的实例方法中,this 默认指向该 class 的实例。
可以用 call、apply 或 bind 显式指定函数运行时的 this 值。