var o = {
b: () => {
console.log('this is', this);
}
}
o.b();
为什么this指向了window?
我看的答案基本都是这样答的
箭头函数this是指向上级,o定义在全局中所有this指向window
var a = {
o:{
b: () => {
console.log('this is', this);
}
}
}
a.o.b();
为什么this还是指向了window?
级
是个比较笼统的说法,箭头函数this是指向上级这个级
指的是函数作用域,是非箭头函数被function(){ }
这个{ }
包裹的作用域,包裹一次就是一级顶层是window
还有一个
级
指的是Object
对象嵌套层级你应该是把上下2个
级
给混淆了,区分清楚就不会有疑问了