for(let i =0; i < 5; i++) {
let i = 'foo';
console.log(i)
}
原因:可以把for循环看成两个块级作用域
把for循环拆分成这样就可理解
let i = 0;
if (i < 5) {
let i = 'foo';
console.log(i)
}
let i = 1;
if (i < 5) {
let i = 'foo';
console.log(i)
}
let i = 2;
if (i < 5) {
let i = 'foo';
console.log(i)
}
let i = 3;
if (i < 5) {
let i = 'foo';
console.log(i)
}
let i = 4;
if (i < 5) {
let i = 'foo';
console.log(i)
}
let i = 5;
if (i < 5) {
let i = 'foo';
console.log(i)
}