jQuery $ .each(arr,foo)与$(arr).each(foo)

Bri*_*unt 5 javascript syntax jquery

在jQuery中,以下两种结构之间的区别是什么jQuery.each:

// Given
var arr = [1,2,3,4],
    results = [],
    foo = function (index, element) { 
       /* something done to/with each element */
       results.push(element * element); // arbitrary thing.
    }

// construction #1
$.each(arr, foo); // results = [1,4,9,16]

// construction #2
$(arr).each(foo); // results = [1,4,9,16]
Run Code Online (Sandbox Code Playgroud)

有什么区别,还是纯粹的语法?

Nic*_*ver 8

$().each()只是一个包装器$.each(),您可以在核心代码中看到:

each: function( callback, args ) {
    return jQuery.each( this, callback, args );
}
Run Code Online (Sandbox Code Playgroud)

虽然,$(something).each()用于元素,我不能保证你使用它与普通数组不会破坏(它不太可能会破坏,因为jQuery对象虽然是包装数组).$.each()在这种情况下,预期用途是直接调用.