【发布时间】:2013-06-15 10:21:45
【问题描述】:
我在遍历数组时总是使用for (i=0; i<array.length; i++)。
循环对象属性时,我总是使用for (var i in object)。
我不能将for (i=0; ... ) 用于对象属性,但我可以将for (var in ...) 用于数组,因为数组也是对象。
我要问的问题是:我应该完全转储for (i=0; ... ) 并将for (var in ...) 用于 数组和对象吗?有性能冲击吗?为什么我要使用一个而不是另一个?
【问题讨论】:
-
这几乎是一个重复,或者至少与an S.O. question viewed over 160K times密切相关。
-
@RayToal 我同意。这里的“相关问题”系统很好,但似乎还不够好。 :)
-
但是我担心另一个问题没有提出的一件事:性能。
-
同意。很难知道问题何时几乎相同。但是,我链接到的那个应该有一些很好的理由来避免数组的 for-in,因此应该对您有所帮助。很好的一点是性能方面没有被涵盖!
-
实际上性能是在链接到 this article 的 cmets 之一中解决的 :)
标签: javascript arrays loops object for-loop