|
|
@ -47,7 +47,10 @@ o.showThis(); // o |
|
|
|
|
|
|
|
|
|
|
|
如果将例子中的 showThis 函数改写为类中的方法,那么直接调用 showThis 方法的 this 的结果也会不同,这是因为 JavaScript 的 Class 被设计成了默认在严格模式下(use strict)执行,而严格模式下 this 指向会发生一些改变。 |
|
|
|
如果将例子中的 showThis 函数改写为类中的方法,那么直接调用 showThis 方法的 this 的结果也会不同,这是因为 JavaScript 的 Class 被设计成了默认在严格模式下(use strict)执行,而严格模式下 this 指向会发生一些改变。 |
|
|
|
|
|
|
|
|
|
|
|
this 是一个复杂的机制,JavaScript 标准定义了 \[\[ thisMode \]\] |
|
|
|
this 是一个复杂的机制,JavaScript 标准定义了 \[\[ thisMode \]\] 私有属性,这个属性有以下三种取值: |
|
|
|
|
|
|
|
- lexical - 表示从上下文中找 this,对应箭头函数。 |
|
|
|
|
|
|
|
- global - 表示当 this 为 underfined 时,取全局对象,对应普通函数。 |
|
|
|
|
|
|
|
- strict - 当严格模式时使用,this 严格按照调用时传入的值,可能为 underfined 或 null |
|
|
|
|
|
|
|
|
|
|
|
## 上下文栈 |
|
|
|
## 上下文栈 |
|
|
|
|
|
|
|
|
|
|
|