jQuery.each()

jQuery.each( array, callback ) Dönen Değer : Nesne
Açıklama : Hem nesneler hem de array'lerin elemanları üzerinde iterasyon yapmak için kullanılır. Array'ler ve array benzeri length özelliği olan nesneler (mesela fonksiyonun arguments nesnesi) index değeri sıfırdan length-1'e kadar tek tek iterasyon yapılır. Diğer nesneler ise isimlendirilmiş özellikleri üzerinden iterasyon yapılır.

jQuery.each(array, callback)
array
Tip : Array Benzeri Nesne
Üzerinde iterasyon yapılacak olan array ya da array benzeri nesne.
callback
Tip : Fonksiyon( integer arrayIndex, Object value )
Her array elemanı üzerinde uygulanacak fonksiyon.
jQuery.each(object, callback)
object
Tip : Nesne
Üzerinde iterasyon yapılacak olan nesne.
callback
Tip : Fonksiyon( String özellikAdı, Object özellikDeğeri )
Her nesne özelliği üzerinde uygulanacak fonksiyon.

$.each() metodu jQuery nesneleri üzerinde hariçten iterasyon yapan $(seçici).each() metodu ile aynı değildir. $.each() fonksiyonu herhangi bir kolleksiyon üzerinde iterasyon yapmak için kullanılabilir, bir obje ya da array olabilir. Aşağıdaki array örneğinde callback fonksiyonuna her turda array index'i ve karşı gelen array elemanı değeri parametrede gönderilir. Değer aslında this kelimesi ile de görülebilir ama JavaScript basit bir sayı ya da string bile olsa this kelimesine object muamelesi yapar. Metod parametrelerinin ilkini yani üzerinde iterasyon yapılan nesneyi geri döner.

$.each([ 52, 97 ], function( index, value ) {
  alert( index + ": " + value );
});

Bu kod şu mesajları üretir :
0: 52
1: 97

Eğer kolleksiyon olarak bir nesne kullanıldıysa, callback parametrelerinde her tur için key-value çifti verilir.

var obj = {
  "flammable": "inflammable",
  "duh": "no duh"
};
$.each( obj, function( key, value ) {
  alert( key + ": " + value );
});

Bu kod da şu mesajları verir :
flammable: inflammable
duh: no duh

$.each() döngüsünü bir noktada bitirmek istersek return false ile döngüyü terkederiz. Eğer false olmayan bir değer ile dönerseniz for döngülerindeki continue gibi bir sonraki elemana geçiş yapar.



Örnekler :

Bir array ve bir nesne üzerinden iterasyonlar yaparak <div> elemanların içine yazılar koyar.

<style>
  div {
    color: blue;
  }
  div#five {
    color: red;
  }
</style>
<div id="one"></div>
<div id="two"></div>
<div id="three"></div>
<div id="four"></div>
<div id="five"></div>

<script>
var arr = [ "one", "two", "three", "four", "five" ];
var obj = { one: 1, two: 2, three: 3, four: 4, five: 5 };

jQuery.each( arr, function( i, val ) {
  $( "#" + val ).text( "Bendeki " + val + "." );

  // "three" sonrası durdurulacak
  return ( val !== "three" );
});

jQuery.each( obj, function( i, val ) {
  $( "#" + i ).append( document.createTextNode( " - " + val ) );
});
</script>


Bir array elemanlarında iterasyon yapar ve hem o andaki elemana hem de index değerine erişir.

$.each( [ "a", "b", "c" ], function( i, l ){
  alert( "Index #" + i + ": " + l );
});


Bir nesne özelliklerinde iterasyon yapar ve hem o andaki key hem de value değerine erişir.

$.each({ name: "John", lang: "JS" }, function( k, v ) {
  alert( "Key: " + k + ", Value: " + v );
});

.

.