当我希望loop
通过array
并在每个element
后面添加一个字符串时,
我可以
for(var x in array){
array[x] += "string";
}
或
for(var x, y = array.length; x<y; x++){
array[x] += "string";
}
但这两个for loops
之间是否存在性能方面的差异?
答案 0 :(得分:3)
建议您不要使用for ... in
来迭代数组。
即。 Why is using "for...in" with array iteration a bad idea?
您应该使用for ... in
仅迭代对象属性。
答案 1 :(得分:1)
通常,for...in
速度较慢,因为它作为公共对象访问数组,而经典for
周期不需要整理array
的所有属性执行任务。
请记住,现代浏览器对数组进行了特殊优化,但如果将它们视为常见对象,则无法利用它们。