为什么arrow函数返回此窗口对象以及如何返回obj?
let obj = {
name:"Maxi",
fn :()=>this,
}
console.log(obj.fn())
答案 0 :(得分:2)
为什么箭头功能这个返回窗口对象
因为箭头函数在创建时捕获this
的当前值。
我如何返回obj
如果您不想捕获this
的当前值,请不要使用箭头功能。
答案 1 :(得分:1)
使用箭头函数,this
不受其自身上下文的约束。
箭头函数不会创建自己的this
上下文,因此this
在封闭上下文中具有原始含义,在您的情况下为window
。