不同上下文中的this值
- 全局作用下的this值为window

- 在函数上下文中
-
在没有任何嵌套的函数中,this取决于是否使用了严格模式
this引用的是window对象

“'use strict' 展示的行为就是为了防止意外的声明全局变量。

- 在模块模式中
在模块模式上下文中,模块里面的方法或者函数中的this引用的都是整个模块

,因此在内部通过this调用

如果在方法里面包含一个匿名函数,this指向window

如果是箭头函数
this指向的是包含它的外面的函数
var x = "111"
var obj = {
x:"222",
sayX: () => {
console.log(this.x)
}
}
obj.sayX(); ====>222
网友评论