例如,会这样:
while (true) {
var random = Math.random();
}
...在大多数实现中效率低于以下?
var random;
while (true) {
random = Math.random();
}
感谢您的输入。
编辑:如果不是很明显,我主要担心此示例中会发生大量重复(取消)分配。
最佳答案
JavaScript 没有 block 作用域。
在第一个例子中,var text
声明是hoisted在 while
block 之外。在这两种情况下,变量只声明一次。在这两种情况下,每次 while
循环迭代都会为变量分配一个值。
var
函数
-作用域- 提升到其功能的顶部
- 在相同作用域中重新声明相同名称是空操作
关于javascript - 在紧凑的 JavaScript 循环中使用 var 会增加与内存相关的开销吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5884706/