JavaScript中this的值在函数调用时确定,遵循四条绑定规则:1.new绑定指向新实例;2.显式绑定由call/apply/bind指定;3.隐式绑定取点号前对象;4.默认绑定在严格模式下为undefined,非严格模式下为全局对象。

JavaScript 中 this 的值不是在函数定义时决定的,而是在函数被调用时才确定的——它取决于“谁调用了这个函数”。理解 this 的核心,就是掌握它的四条绑定规则(按优先级从高到低)。
1. new 绑定:构造函数调用时 this 指向新创建的对象
当函数通过 new 关键字调用时,this 被绑定到新生成的实例对象上。
- 引擎会自动创建一个空对象,并将其作为 this 传入函数
- 函数内部对 this 的属性赋值,会添加到该实例上
- 函数默认返回这个新对象(除非显式 return 一个非 null 对象)
function Person(name) { this.name = name; }<br>const p = new Person('Alice'); // this 指向 p登录后复制
2. 显式绑定:call、apply、bind 强制指定 this
使用 call()、apply() 或 bind() 时,第一个参数就是你明确传入的 this 值。
立即学习“Java免费学习笔记(深入)”;
标签: javascript java node 浏览器 app 回调函数 win 区别 作用域
还木有评论哦,快来抢沙发吧~