我注意到 jquery 中 .each() 和 .grep() 函数的回调函数之间的参数顺序有所不同。
jQuery.grep( array, function(elementOfArray, indexInArray), [ invert ] )
jQuery.each( collection, callback(indexInArray, valueOfElement) )
您知道他们更喜欢将 indexInArray 作为 .each() 中的第一个参数和 .grep() 函数中的第二个参数吗?
谢谢, 布拉克·奥兹多安
最佳答案
我不知道是否有真正的答案,但让我们看看该函数的用法:
在
.grep
中,处理数组的元素。处理该元素不需要该元素的索引。它或多或少是可选的,因此是第二个参数。在
.each
中,没有参数是真正必要的。但由于可以通过函数内的this
访问该元素,因此将该元素设置为第二个参数是有意义的。这样,就不必仅指定两个变量来使用索引。
如果参数的顺序相反并且您想使用索引,则必须为元素指定一个变量,并且您可能无法再使用this
(但我不是确定这一点)。
所以最终这是一个方便的问题。
关于jquery - 为什么 jQuery.each() 和 jQuery.grep() 有不同的参数顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2131289/