在严格的JavaScript循环中使用var会增加与内存相关的开销吗?

BHS*_*key 5 javascript memory-management

例如,这样:

while (true) {
    var random = Math.random();
}
Run Code Online (Sandbox Code Playgroud)

...在大多数实现中,效率低于以下几点?

var random;
while (true) {
    random = Math.random();
}
Run Code Online (Sandbox Code Playgroud)

感谢您的输入.

编辑:如果不明显,我最担心的是在这个例子中发生了很多重复(de)分配.

Mat*_*all 8

JavaScript没有块范围.

在第一个例子中,var text声明从块中提升while.在这两种情况下,变量只声明一次.在这两种情况下,每次循环迭代都会为变量赋值一次while.

var

  • function-scoped
  • 提升到其功能的顶部
  • 同一范围内同名的重新声明是无操作