Bu betik, JavaScript 1.6 sürümünde tanımlanan Array.map() fonksiyonunun tüm tarayıcılarda çalışmasını sağlar.
Sözdizimi
yeni = Array.forEach(fonk [, thisElem])
fonk | Dizi elemanlarının her biri üzerinde işlem yaparak yeni değerlerini döndürecek olan fonksiyonu belirler. |
thisElem | İşlem fonksiyonu içinde this olarak kullanılacak nesneyi veya elementi belirler. |
Dönüş Değeri
yeni | Güncellenmiş değerleri içeren yeni Array döner. |
Kullanım Örneği
Aşağıdaki örnek, Array.map() fonksiyonu kullanılarak, bir dizi içindeki tüm rakamlara '2' eklenerek yeni bir Array oluşturulmasını göstermektedir.
<script type="text/javascript" src="myn_Array_map.js"></script>
<script type="text/javascript">
function mapFonk(eleman, sira, arrayRef) {
var yeniDeger = eleman + 2;
return yeniDeger;
}
function mapTest() {
var dizi = [1, 2, 3, 4, 5, 6, 7];
var yeniDizi = dizi.map(mapFonk);
alert("Dizinin ilk hali : " + dizi.join(", ") + "\n" +
"Dizinin sonraki hali : " + yeniDizi.join(", ") );
}
</script>
<input type="button" value="Tüm değerlere '2' ekle" onclick="mapTest()" />
Test Edin
myn_Array_map.js
/**
"Array.map()" Fonksiyon Betiği v1.0
Telif Hakkı (c) 2009, mynotlar.com, Tüm hakları saklıdır.
http://www.mynotlar.com
*/
if(!Array.prototype.map) {
Array.prototype.map = function(fonk, thisElem) {
var sonuc = [];
for(var i = 0, ii = this.length; i < ii;i++) {
sonuc[i] = fonk.call(thisElem, this[i], i, this);
}
return sonuc;
}
}