JavaScript中的上下文this

不同上下文中的this值

  • 全局作用下的this值为window
JavaScript中的上下文this_第1张图片
globalthis.png
  • 在函数上下文中
  1. 在没有任何嵌套的函数中,this取决于是否使用了严格模式

    this引用的是window对象

JavaScript中的上下文this_第2张图片
image2.png

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

JavaScript中的上下文this_第3张图片
image3.png
  • 在模块模式中

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

JavaScript中的上下文this_第4张图片
iamge4.png

,因此在内部通过this调用


JavaScript中的上下文this_第5张图片
iamge5.png

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

JavaScript中的上下文this_第6张图片
image6.png
如果是箭头函数

this指向的是包含它的外面的函数

var  x = "111"
var obj = {
   x:"222",
   sayX: () => {
    console.log(this.x)
}
}
obj.sayX();  ====>222

你可能感兴趣的:(JavaScript中的上下文this)