最近,我很惊讶这两个代码块都能正常工作(请参见代码段):
for (let propName in myObject) {
console.log(propName);
}
for (const propName in myObject) { // A const THAT WILL CHANGE VALUE ?
console.log(propName);
}
似乎我正在使用const
来改变价值。
问题
这怎么可能?一个比另一个好吗?关于内存分配和性能?
const myObject = {
propA: 'foo',
propB: 'bar'
};
console.log('For in with let:');
for (let propName in myObject) {
console.log(propName);
}
console.log('For in with const:');
for (const propName in myObject) {
console.log(propName);
}