javascript - 你应该在 for-in 循环中创建一个 var 吗?

标签 javascript loops scoping

for(var key in object){
  //process object[key]
}

或者只是

for(key in object) {
  //process object[key]
}

有区别吗?

最佳答案

是的,有区别。无论你是否使用 var key 仍然是一个变量,它的“生命”不会在 for 完成后真正结束,它的范围将跨越到结束功能。 但是,如果您不使用 var - key 将是全局的。

关于javascript - 你应该在 for-in 循环中创建一个 var 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17382550/

相关文章:

javascript - 并排响应图像具有相同的高度不同的宽度

javascript - 为javascript插入的元素添加点击事件

javascript - 嵌套 ng-repeat 中的 Angularjs 单选按钮未选中

javascript - 如何强制 javascript 等待/阻塞,直到延迟的作业完成?

c - 数组 get 被 while 循环覆盖,它们都具有相同的数据

python - 在 Python 中同时迭代多个列表

javascript - jQuery Loop by id 为每个元素

java - Java中变量的作用域

lambda - 范围函数 apply/with/run/also/let : Where do their names come from?

javascript - Vue.js 无法在方法中遍历对象