在下面的示例中,为什么 var 比 let in for 循环花费的时间长?我对此进行了一些研究,发现 var 由于功能范围而在全局范围内定义变量,而让在块范围内定义变量。这就是为什么 ' var ' 比 'let' 需要更长的时间,但仍然无法找到关于为什么会这样的实际理解?
console.time('letCounter');
for (let letCounter = 0; letCounter < 10500; letCounter++) {
console.log('letCounter', letCounter);
}
console.timeEnd('letCounter');
// 598.838134765625ms
console.time('varCounter');
for (var varCounter = 0; varCounter < 10500; varCounter++) {
console.log('varCounter', varCounter);
}
console.timeEnd('varCounter');
// 656.56494140625ms