JavaScript’te “Array” Metotları Nelerdir?
Bu yazımızda, JavaScript’te “Array” objesindeki önemli metotları ve bunların örnek kullanımlarını derledik.
JavaScript’te “Array” Metotları
JavaScript’teki “array” (dizi) metotları, aşağıdaki tabloda dönüş tipine ve diziyi değiştirip değiştirmemesine göre listelenmiştir:
Metot | Dönüş Tipi | Diziyi Değiştirir mi? |
---|---|---|
push | void | Evet |
pop | Son çıkarılan öğe | Evet |
shift | İlk öğe | Evet |
unshift | Yeni dizi uzunluğu | Evet |
splice | Değiştirilen öğelerin dizisi | Evet |
slice | Seçilen öğelerin dizisi | Hayır |
forEach | void | Hayır |
map | Dönüştürülmüş öğelerin dizisi | Hayır |
filter | Filtrelenen öğelerin dizisi | Hayır |
reduce | Değer (sayı, string, obje, dizi vb.) | Hayır |
concat | Birleştirilmiş dizi | Hayır |
join | String | Hayır |
reverse | Ters çevrilmiş dizi | Evet |
sort | Sıralanmış dizi | Evet |
indexOf | Sayı (indeks) | Hayır |
lastIndexOf | Sayı (indeks) | Hayır |
find | Değer | Hayır |
findIndex | Sayı (indeks) | Hayır |
every | Boolean | Hayır |
some | Boolean | Hayır |
includes | Boolean | Hayır |
fill | void | Evet |
flat | Düzleştirilmiş dizi | Hayır |
flatMap | Dönüştürülmüş ve düzleştirilmiş dizi | Hayır |
JavaScript’te yaygın bir şekilde kullanılan “Array” metotlarının ne iş yaptığını örneklerle beraber açıklayalım.
⭐ push()
, dizinin sonuna bir ya da daha fazla öğe ekler ve dizinin yeni uzunluğunu döndürür. Haliyle mevcut dizi değişir. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3];
arr.push(4);
console.log(arr); // [1, 2, 3, 4]
arr.push(8, 10);
console.log(arr); //[1,2,3,4,8,10]
⭐ pop()
, dizinin sonundaki öğeyi çıkarır ve çıkarılan öğeyi döndürür. Mevcut dizi değişir. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3, 4];
let last = arr.pop();
console.log(last); // 4
console.log(arr); // [1, 2, 3]
⭐ shift()
, dizinin ilk öğesini çıkarır ve çıkarılan öğeyi döndürür. Mevcut dizimizi değiştirir. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3, 4];
let first = arr.shift();
console.log(first); // 1
console.log(arr); // [2, 3, 4]
⭐ unshift()
, dizinin başına bir ya da daha fazla öğe ekler ve dizinin yeni uzunluğunu döndürür. Haliyle mevcut dizi değişir. Aşağıdaki örneği inceleyiniz:
let arr = [2, 3, 4];
arr.unshift(1);
console.log(arr); // [1, 2, 3, 4]
// var olan dizi değişir
⭐ splice()
, bir dizide belirli bir konumdan başlayarak belirli bir sayıda öğeyi silmeyi ve gerektiğinde yeni öğeleri eklemeyi sağlar.
Bu metot, diziyi yerinde değiştirir, yani bir dizi üzerinde splice()
metodunu çalıştırdığınızda, o dizi değişir. splice()
metodunun sözdizimi: array.splice(start, deleteCount, item1, …, itemX)
start
: Bu parametre, değişikliklerin başlayacağı indeksi belirtir. Eğer negatif bir sayı verilirse, dizi sonundan başlanır.deleteCount
:start
indeksinden başlayarak silinecek öğe sayısını belirtir. Eğer bu parametre belirtilmezse,start
indeksinden itibaren tüm öğeler silinir.item1, ..., itemX
: İsteğe bağlıdır. Bu parametrelerledeleteCount
parametresi ile belirtilen öğelerin yerine eklenmek üzere yeni öğeler sağlanabilir. Aşağıdaki örneği inceleyiniz:
let fruits = ["apple", "banana", "mango", "orange", "passionfruit"];
let removed = fruits.splice(2, 2, "kiwi", "melon");
console.log(fruits); // Çıktı: ["apple", "banana", "kiwi", "melon", "passionfruit"]
console.log(removed); // Çıktı: ["mango", "orange"]
Yukarıdaki örnekte, “mango” ve “orange” öğeleri (2. indeksten başlayarak 2 öğe) kaldırılıyor ve yerlerine “kiwi” ve “melon” ekleniyor. Kaldırılan öğeler splice()
metodunun döndürdüğü bir dizi olarak alınıyor ve removed
değişkeninde saklanıyor. Sonuç olarak fruits
dizisi değişirken, removed
dizisi kaldırılan öğeleri tutar.
⭐ slice(indeksDahilİle, indeksDahilDeğilArası), bir dizi içinden bir alt dizi oluşturur. Haliyle mevcut dizimiz korunur. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3, 4, 5];
let sliced = arr.slice(1, 3);
console.log(sliced); // [2, 3]
console.log(arr); //[1,2,3,4,5]
⭐ forEach(), dizi elemanları üzerinde belirtilen bir işlemi gerçekleştirir. Mevcut dizi değişmez. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3, 4, 5];
arr.forEach(function(element) {
console.log(element * 2);
});
/*
2
4
6
8
10
*/
⭐ map(), dizi elemanları üzerinde belirtilen bir işlemi gerçekleştirir ve bu işlemin sonucuyla oluşturulan yeni bir dizi döndürür. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3, 4, 5];
let doubled = arr.map(function(element) {
return element * 2;
});
console.log(doubled); // [2, 4, 6, 8, 10]
⭐ filter(), belirtilen bir koşulu sağlayan dizi elemanlarını yeni bir dizi olarak döndürür. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3, 4, 5];
let evens = arr.filter(function(element) {
return element % 2 === 0;
});
console.log(evens); // [2, 4]
⭐ reduce(), dizi elemanları üzerinde belirtilen bir işlemi gerçekleştirir ve bu işlemin sonucunu tek bir değer olarak döndürür. Aşağıdaki örneği inceleyiniz:
let arr = [1, 2, 3, 4, 5];
let sum = arr.reduce(function(total, current) {
return total + current;
}, 0);
console.log(sum); // 15
⭐ concat()
, mevcut diziye bir veya daha fazla dizi/değer ekleyerek yeni bir dizi oluşturur. Aşağıdaki örneği inceleyiniz:
let arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];
let arr3 = arr1.concat(arr2);
console.log(arr3); // [1, 2, 3, 4, 5, 6]
Yukarıda da göreceğiniz üzere JavaScript’teki Array metotlarından bazıları mevcut diziyi değiştirirken, bazıları yeni bir dizi oluşturur.