【发布时间】:2021-10-16 09:19:51
【问题描述】:
为什么 javascript 闭包在这些示例中的工作方式不同?
for (let i = 0; i < 3; i++) {
setTimeout(() => {
console.log(i)
}, 1000);
}
// Output: 0, 1, 2
let i = 0;
for (i = 0; i < 3; i++) {
setTimeout(() => {
console.log(i)
}, 1000);
}
// Output: 3, 3, 3
【问题讨论】:
-
这可能是被问到最多的javascript面试问题
标签: javascript closures