let a = 1;
const b = a;
a = 2;
console.log(a) //2
console.log(b) //1
于是const
定义的常量不会被重新赋值,除非是对象类型,那这样子?
for(let a = 1; a < 5; a++){
const b = a;
console.log(b) // 1 2 3 4 undefined
}
为毛 for
循环里面 const
可以被重新赋值?
感谢!
let a = 1;
const b = a;
a = 2;
console.log(a) //2
console.log(b) //1
于是const
定义的常量不会被重新赋值,除非是对象类型,那这样子?
for(let a = 1; a < 5; a++){
const b = a;
console.log(b) // 1 2 3 4 undefined
}
为毛 for
循环里面 const
可以被重新赋值?
感谢!
13 回答13.1k 阅读
7 回答2.3k 阅读
3 回答1.4k 阅读✓ 已解决
6 回答1.5k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
3 回答1.5k 阅读✓ 已解决
6 回答1.2k 阅读
一次for循环结束,常量b的生命周期就结束了,下一次for循环的时候,又new了一个新的常量b