【发布时间】:2021-01-28 09:25:59
【问题描述】:
在箭头函数中没有 this 绑定。因此,箭头函数在词法上解析 this 引用。如果我们在与定义函数的范围不同的范围内执行函数,它会记住 this 引用。这种行为是否由于关闭而发生?
我知道函数可以通过闭包记住它的词法环境,但是在 chrome 开发工具中 this 不会出现在闭包中,而是出现在本地范围内。为什么会这样?
function outerScope(outerVar){
let innerFun = () =>{
console.log(outerVar);
console.log(this);
}
return innerFun;
}
let innerFun = outerScope.call({test: "testing this reference"},"outerVar");
innerFun();
【问题讨论】:
标签: javascript node.js this