JavaScript中基本的for循环和for循环之间的区别 [英] Difference between a basic for-loop and a for-in-loop in JavaScript
问题描述
可能重复:
JavaScript为...…在”与数组
for(var i = 0; i< array.length; i ++)
与
for(var i in array)
in JavaScript?
< pre $ for(var i = 0; i< array.length; i ++)
最适合遍历数组,按顺序访问所有数组元素。
在现代JavaScript引擎中,数组。
$ p $
for(var i in object)// with object.hasOwnProperty
用于检查OBJECT的枚举属性,包括继承的枚举属性。订单不能保证。尽管一个数组是一个对象,并且这个方法对于数组来说是工作的,但是它并不理想,因为返回的属性可能没有任何特定的顺序。此外,如果在数组对象上放置了任何猴子补丁或垫片,则可以在这里显示。
Possible Duplicate:
JavaScript “For …in” with Arrays
In which situations using
for (var i = 0; i < array.length; i++)
is different from using
for (var i in array)
in JavaScript?
for (var i = 0; i < array.length; i++)
is best for traversing an array, visiting all of the array elements in order.
On modern javascript engines, array.forEach
is often cleaner.
for (var i in object) // with object.hasOwnProperty
is used to go through the enumerable properties of an OBJECT, including inherited enumerable properties. Order is not assured. Though an array is an object and this method "works" for arrays, it isn't ideal as returned properties may not be in any particular order. In addition, if any monkey patches or shims are put into place on the array object, they can show up here.
这篇关于JavaScript中基本的for循环和for循环之间的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!