💡
原文中文,约7400字,阅读约需18分钟。
📝
内容提要
本文讨论了JavaScript中的`this`关键字及其绑定规则,包括默认绑定、隐式绑定、显示绑定和new绑定。`this`的指向取决于函数的调用方式,严格模式下会绑定为`undefined`。还介绍了箭头函数的`this`绑定特性,以及对象和数组的定义与属性访问,最后提到原型链和类的概念,强调理解这些知识点的重要性。
🎯
关键要点
- this关键字的指向取决于函数的调用方式。
- this的绑定规则包括默认绑定、隐式绑定、显示绑定和new绑定。
- 严格模式下,默认绑定会将this绑定为undefined。
- 隐式绑定是指当对象的方法被调用时,this指向该对象。
- 显示绑定可以使用call和apply方法来绑定this。
- new绑定用于创建新对象并将其绑定到this。
- 箭头函数的this绑定特性是根据外层作用域决定的。
- 对象的属性访问中,键名会被转换为字符串。
- JavaScript中的类是通过class关键字定义的,类的实例化使用new操作符。
- 原型链的概念是JavaScript对象继承的基础,Object.create()可以创建新对象并继承原型。
❓
延伸问答
JavaScript中的this关键字是如何绑定的?
this的绑定规则包括默认绑定、隐式绑定、显示绑定和new绑定,具体取决于函数的调用方式。
严格模式下,this的默认绑定会是什么?
在严格模式下,默认绑定会将this绑定为undefined。
箭头函数的this是如何绑定的?
箭头函数的this绑定特性是根据外层作用域决定的,无法被修改。
如何使用call和apply方法绑定this?
可以使用call和apply方法来显示绑定this,允许你指定函数调用时的上下文对象。
JavaScript中的类是如何定义的?
JavaScript中的类使用class关键字定义,类的实例化使用new操作符。
原型链在JavaScript中有什么作用?
原型链是JavaScript对象继承的基础,允许对象通过原型访问属性和方法。
➡️