【发布时间】:2021-10-13 16:10:57
【问题描述】:
类似于This Question,在js 中使用const 代替let 和var 用于每次迭代更改的值有什么优势?
我不是这种模式的特别粉丝,但我有兴趣了解这种模式的优点。
背景
当我在 Visual Studio 中编写 JavaScript 并键入 for 时,它会建议以下代码块:
for (let index = 0; index < array.length; index++) {
const element = array[index];
}
我个人不喜欢这种模式,因为每次迭代都为const 重新分配一个值,因为它似乎违反了常量的核心思想(是的,我知道常量在技术上超出了范围,但它仍然感觉就像 const 被分配了一个新值)。
我认为这种模式必须有很多很好的理由,否则为什么它会作为建议的代码块保留下来。我想出了一个很好的理由,但我仍然很好奇我缺少什么优势。
我想出的原因
我可以看到这在大型代码块中很有用,您要么需要确保没有人使用此名称,要么多次引用此名称以期望相同的值。
【问题讨论】:
-
一些消息来源表明使用
const可能比let具有性能优势,尽管我还没有看到证明这一点的基准。 -
“感觉就像
const被分配了一个新值” - 在函数中使用const时,您是否也有这种感觉?因为,你知道,这个函数可以被多次调用……
标签: javascript for-loop constants