变量分配和范围

时间:2018-09-06 07:38:31

标签: javascript ecmascript-6 scope global-variables ecmascript-5

我只是对分配变量时使用var和let之间的区别感到好奇。

for(var i = 0; i < 4; i++){
    setTimeout(() => console.log(i), 1000);
}

output: 4
        4
        4
        4

for(let i = 0; i < 4; i++){
    setTimeout(() => console.log(i), 1000);
}

output: 0
        1
        2
        3

从上面的代码片段中,我想知道为什么这两个代码记录了不同的结果。

0 个答案:

没有答案