Menu
Coddy logo textTech

Dizi Yapı Sökümü

Coddy'nin JavaScript Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 47 / 65.

Dizi yapı sökümü (array destructuring), bir diziden birden fazla değeri çıkarmanın ve bunları tek bir ifadede değişkenlere atamanın kullanışlı bir yoludur. Bir dizi sabitinin (array literal) yapısını yansıtan bir sözdizimi kullanır.

Temel sözdizimi:

const [a, b, c] = [1, 2, 3];
console.log(a); // 1
console.log(b); // 2
console.log(c); // 3

Öğeleri atlayabilirsiniz:

const [a, , c] = [1, 2, 3];
console.log(a); // 1
console.log(c); // 3

Kalan öğeleri yakalamak için rest parametrelerini kullanabilirsiniz:

const [a, ...rest] = [1, 2, 3, 4, 5];
console.log(a);    // 1
console.log(rest); // [2, 3, 4, 5]

Varsayılan değerler sağlayabilirsiniz:

const [a, b, c = 3] = [1, 2];
console.log(c); // 3
challenge icon

Görev

Kolay

Bir diziyi argüman olarak alan analyzeArray adında bir fonksiyon oluşturun. Fonksiyon, dizinin birinci, ikinci ve son elemanlarını çıkarmak için dizi parçalama (array destructuring) kullanmalıdır. Aşağıdaki özelliklere sahip bir nesne döndürmelidir:

  • first: Dizinin ilk elemanı
  • second: Dizinin ikinci elemanı
  • last: Dizinin son elemanı
  • restLength: Dizide kalan elemanların sayısı

Bu elemanlardan herhangi biri mevcut değilse, varsayılan değer olarak null kullanın.

Kopya kağıdı

Dizi parçalama (array destructuring), bir diziden birden fazla değeri çıkarır ve bunları tek bir ifadede değişkenlere atar:

const [a, b, c] = [1, 2, 3];
console.log(a); // 1
console.log(b); // 2
console.log(c); // 3

Boşluklar bırakarak öğeleri atlayın:

const [a, , c] = [1, 2, 3];
console.log(a); // 1
console.log(c); // 3

Kalan öğeleri yakalamak için rest parametrelerini kullanın:

const [a, ...rest] = [1, 2, 3, 4, 5];
console.log(a);    // 1
console.log(rest); // [2, 3, 4, 5]

Eksik öğeler için varsayılan değerler sağlayın:

const [a, b, c = 3] = [1, 2];
console.log(c); // 3

Kendin dene

function analyzeArray(arr) {
  // Kodunuzu buraya yazın
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık ve Akış bölümündeki tüm dersler