2016-10-04 4 views
1

JavaScript変数に配列を繰り返したい場合は、通常jQueryの.each()このような関数:

var myArray = ["foo", "bar"]; 
$(myArray).each(function(index, value) { 
    console.log(value); 
}); 

しかし、私はこのように、.each()関数の引数としての私の配列で渡すことによって、同じ効果を得ることができます。

var myArray = ["foo", "bar"]; 
$.each(myArray, function(index, value) { 
    console.log(value); 
}); 

Obligatory but unnecessary JSFiddle

この質問は基本的に他のjQuery関数にも適用できます。.each()だけではありません。これらの2つの異なる用途の間に機能的な違いはありますか?

答えて

1

いいえ、機能の違いはありません。

主な違いは、$.each()を使用すると配列に渡すことができますが、$().each()を使用すると、コンテキストとして使用するjQueryオブジェクトが構築されている必要があります。

読みやすさに若干の違いがありますが、それはごくわずかです。

あなたはjQuery's source codeを見ていた場合$.eachは、単にそれぞれのプロトタイプの定義にだけ呼び出しているように、あなたも、これを確認することができます:

// Execute a callback for every element in the matched set. 
each: function(callback) { 
    return jQuery.each(this, callback); 
}, 
関連する問題