Общий шаблон в jQuery - это метод, который выполняет обратный вызов, которому передается элемент массива и его индекс внутри этого массива. Тем не менее, кажется совершенно случайным, какой аргумент приходит первым. Например, из документов jQuery в http://api.jquery.com:
-
jQuery.each( collection, callback(indexInArray, valueOfElement) )
-
.each( function(index, Element) )
-
jQuery.map( array, callback(elementOfArray, indexInArray) )
-
.map( callback(index, domElement) )
-
jQuery.grep( array, function(elementOfArray, indexInArray), [ invert ] )
-
.filter( function(index) )
В трех случаях (jQuery.each
, .each
, .map
) индекс приходит первым. В двух других (jQuery.grep
, jQuery.map
) элемент приходит первым. Я знаю, что api теперь установлен, но для меня это похоже на грубую несогласованность.
Есть ли шаблон, который мне не хватает, или это просто случайный? Должно ли это быть исправлено или я должен просто заткнуться и запомнить их?