这是两个代码段,我在其中一个使用“ var”关键字,在另一个中使用“ let”。为什么结果如此不同。
for (let i = 0; i < 5; i++) {
setTimeout(function() {
console.log(i);
}, 100);
}
for (var i = 0; i < 5; i++) {
setTimeout(function() {
console.log(i);
}, 100);
}
输出: 5 5 5 5 5