gpt4 book ai didi

javascript - for (var propertyName in object) vs for (propertyName in object)?

转载 作者:行者123 更新时间:2023-11-28 11:39:43 26 4
gpt4 key购买 nike

这两种迭代对象属性名称的方法中哪一种更可取?

for (var propertyName in object) {

}

对比

for (propertyName in object) {

}

我知道在第二个示例中,propertyName 成为全局变量,这是需要避免的,所以我想第一个示例会更好,对吧?

最佳答案

这个问题可以简化为:

var a = 0; // option 1
b = 0; // option 2

正如你所说:

    选项 1 中的
  • var 限制新变量的范围;它还允许阴影;
  • 选项 2 将生成一个新的全局变量,或将值 0 分配给范围内名为 b 的任何现有变量。

因此,选项 1 确实“更好”。

(但是值得注意的是,第一个示例中的 propertyName 的范围将是封闭的函数而不是循环体或任何封闭的条件 block 。)

关于javascript - for (var propertyName in object) vs for (propertyName in object)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8521796/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com