Это не совсем случайно.Потому что:
$.map( $('selector'), function(el, index) { /* element (DOMElement) is first, index optional */ } );
$('selector').map(function(index) { /* 'this' (DOMElement) is first.... index optional */ });
Смотрите шаблон?Во втором примере есть второй аргумент, но он передается только для удобства и совпадает с this
.
Шаблон заключается в том, что первый аргумент всегда «более» важен, чем второй, а последний аргумент должен быть наименее важным («более необязательный»).Таким образом, вам не нужно указывать все наименее важные аргументы, если вам нужен только один.А в случае $(...).each
часто вам даже не нужны никакие аргументы, потому что this
- это только то, что вы хотите.