场景:
var s = 'hello';
for (var i = 0; i < s.length; i++) {
console.log(s[i]);
}
console.log(i);//5
上面代码中,变量i只用来控制循环,但是循环结束后,它并没有消失,泄露成了全局变量。(可以把 var i 改为 let i 试一下)
var s = 'hello';
for (let i = 0; i < s.length; i++) {
console.log(s[i]);
}
console.log(typeof i); // typeof 会抛出异常 => undefined