此问题已经在这里有了答案:
我如何使用函数外部作用域中的变量。我在这里创建了这个简单的示例
var view = {
init(){
const targetOne = document.querySelector(".targetOne");
const targetTwo = document.querySelector(".targetTwo");
var val = "outer scope";
targetOne.addEventListener('click', (e) => {
console.log('target one', val)
});
targetTwo.addEventListener('click', this.handleEvent);
},
handleEvent(e) {
console.log('targetTwo ', val);
}
}
view.init();
JS小提琴链接:https://jsfiddle.net/jr7b521x/50/
对于targetOne回调,我可以使用变量val,但是当我为targetTwo回调定义函数时,该变量val不在范围内定义。我觉得我在这里缺少一些非常简单的东西,我刷新了作用域链接和闭包,但无法获得它]
我如何使用函数外部作用域中的变量。我在这里创建了这个简单的示例var view = {init(){const targetOne = document.querySelector(“。targetOne”); const ...
变量val在init()函数的范围内