jquery - 为什么 jQuery.each() 和 jQuery.grep() 有不同的参数顺序?

标签 jquery parameters

我注意到 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/

相关文章:

javascript - Firefox 在 input.attr ("type"、 "number"上触发更改事件

django - 与 Django 模板中的参数链接

parameters - NSIS LogicLib 参数失败

jquery - Java Jax-RS( Jersey )后端和 jQuery 前端 -> 安全性 + session

javascript - 使用 Jquery 替换特定的名称属性?

php - 为什么我的变量不能作为 PHP 函数中的参数

c++ - 传递接受 void * 的成员函数

parameters - 调整 z3 以首先尝试较低的数字

javascript - jQuery 事件处理程序不会在单击时激活

javascript - Canvas HTML5 和 jquery,删除内容