【发布时间】:2012-12-17 21:51:15
【问题描述】:
一个奇怪的问题,但是每次我使用jQuery.each() 时,我都想知道为什么indexInArray 是第一个参数而不是第二个(第二个当前是值本身),就像原生的array.forEach() 一样?
an identical, but unanswered question.each() 的 API 文档也获得了相当多的支持!
通常,我发现代码“作用于”值而不是索引,导致函数体中有一个未使用的变量(这使得 js(h|l)int 抱怨,有充分的理由我的想法)。那么,为什么值不是第一个参数呢?
这是早期版本中考虑不周的实现的遗留问题,还是有充分的理由?
【问题讨论】:
-
这是他们的 API,他们可以让它返回任何他们想要的东西。在这一点上,向后兼容性可以防止任何更改。
-
是的,我完全明白了,我只是想知道最初的决定背后的原因是什么。
-
在大多数情况下,
while或for循环会比这两种方法中的任何一种都快,所以如果您不喜欢它们,请考虑是否真的需要它们。
标签: javascript loops foreach jquery