CodeBlanks Logo Icon CodeBlanks

Map veri yapısı

JavaScript kursu · İleri seviye · Ders 36/100

Map ile herhangi bir anahtar türünü kabul eden sıralı anahtar-değer yapısı öğrenirsin.

Map nedir?

Map, sıralı bir anahtar-değer koleksiyonudur. new Map() ile oluşturulur ve ekleme sırasını korur. Bir nesneden (object) farklı olarak anahtarlar yalnızca dize veya sembol değil; herhangi bir tür olabilir: sayı, nesne, hatta fonksiyon.

Değer eklemek için set, okumak için get kullanırsın. size özelliği kaç giriş olduğunu verir. Map, anahtarları eklendiği sırada saklar; bu nedenle iterasyon sırası her zaman tutarlıdır.

Map metotları

Map'in temel metotları şunlardır: set(key, value) ile giriş ekler ya da güncellersin; get(key) ile değeri okursun. has(key) anahtarın varlığını true/false döndürür; delete(key) ilgili girişi siler. clear() tüm Map'i boşaltır.

size bir metot değil, özelliktir; parantez olmadan yazılır. Aynı anahtarı ikinci kez set edersen eski değer üzerine yazılır; yinelenen anahtar oluşmaz.

Uygulama Çeşitli anahtar türleriyle Map

roles adında yeni bir Map oluştur. 1 anahtarına "admin", "guest" anahtarına "visitor" ve bir user nesnesi anahtarına "owner" değerlerini ekle. Sonra roles.get(1)'i console.log ile yazdır.

Örnek çözümü göster
const user = { name: "Ayşe" };
const roles = new Map();
roles.set(1, "admin");
roles.set("guest", "visitor");
roles.set(user, "owner");
console.log(roles.get(1));

Kendini test et

  1. Map ile ilgili hangisi doğrudur?

    • Anahtarlar yalnızca dize olabilir
    • Anahtarlar nesne ve fonksiyon da olabilir
    • Ekleme sırasını korumaz
    • Boyutu kendin sayman gerekir
    Cevabı göster

    Anahtarlar nesne ve fonksiyon da olabilir — Doğru. Map her türden anahtar kabul eder ve ekleme sırasını korur.

  2. Değeri oku

    const userRoles = new Map();
    userRoles.set(1, "admin");
    const role = userRoles.____(1);
    console.log(role);
    Cevabı göster
    const userRoles = new Map();
    userRoles.set(1, "admin");
    const role = userRoles.get(1);
    console.log(role);
  3. Map metotlarını eşleştir

    set(key, val)
    Anahtar-değer ekler
    get(key)
    Değeri döndürür
    has(key)
    Anahtar var mı?
    size
    Kaç giriş var?

İleri seviye bölümündeki tüm dersler