Bu betik, JavaScript 1.6 sürümünde tanımlanan Array.forEach() fonksiyonunun tüm tarayıcılarda çalışmasını sağlar.
Sözdizimi
Array.forEach(fonk [, thisElem])
fonk | Dizi elemanlarının tek tek parametre olarak aktarılacağı fonksiyonu belirler |
thisElem | Fonksiyon içinde this olarak kullanılacak nesneyi veya elementi belirler. |
Kullanım Örneği
Aşağıdaki örnek, Array.forEach() fonksiyonu kullanılarak, bir paragrafın (P) çocuk elementlerini içeren bir dizi içindeki B elementlerinin arka plan renginin kırmızı yapılmasını göstermektedir.
<script type="text/javascript" src="myn_Array_foreach.js"></script>
<script type="text/javascript">
function forEachTestFonk(eleman, sira, arrayRef) {
// Düğüm, bir element düğümüyse ve düğüm adı 'B' ise..
if(eleman.nodeType == 1 && eleman.nodeName == 'B')
eleman.style.backgroundColor = "red";
}
function forEachTest() {
var elems = document.getElementById("forEachCerc").childNodes;
var dizi = [];
for(var i = 0;i < elems.length;i++) {
dizi.push(elems[i]);
}
dizi.forEach(forEachTestFonk);
}
</script>
<p id="forEachCerc">Bu paragraf, <em>italik</em>, <b>Kalın</b> ve
<span>span</span> içinde <strong>elemanlar</strong> içeren <b>örnek</b> bir paragraftır.</p>
<input type="button" value="Kırmızı Yap" onclick="forEachTest()" />
Test Edin
myn_Array_foreach.js
/**
"Array.forEach()" Fonksiyon Betiği v1.0
Telif Hakkı (c) 2009, mynotlar.com, Tüm hakları saklıdır.
http://www.mynotlar.com
*/
if(!Array.prototype.forEach) {
Array.prototype.forEach = function(fonk, thisElem) {
for(var i = 0, ii = this.length; i < ii;i++) {
fonk.call(thisElem, this[i], i, this)
}
}
}