JavaScript'te Collections (Sets, Maps)

JavaScript'te, Set ve Map gibi veri yapıları, birden fazla öğeyi depolamak ve organize etmek için kullanılan koleksiyonlar olarak adlandırılır. Bu koleksiyonlar, daha karmaşık veri yapıları oluşturmak ve veri manipülasyonunu daha etkili hale getirmek için kullanılır.

Set

Set, benzersiz ve sırasız değerleri saklayan bir veri yapısıdır. Bir Set objesi, her biri yalnızca bir kez tekrar eden elemanları içerir. Yineleme sırasında elemanlar eklenme sırasına göre döner, ancak Set nesnesi herhangi bir özel sıralamaya sahip değildir.

let set = new Set();

set.add("Apple");
set.add("Banana");
set.add("Orange");

console.log(set.size);    // 3
console.log(set.has("Apple"));   // true

set.delete("Banana");
console.log(set.size);    // 2

Map

Map, bir anahtar-değer çiftlerinin koleksiyonunu temsil eden bir veri yapısıdır. Her anahtar yalnızca bir kez kullanılabilir ve her anahtarın karşılık gelen bir değeri vardır. Map nesnesi, eklenme sırasına göre değil, anahtarların eklendiği sıraya göre döner.

let map = new Map();

map.set("name", "John");
map.set("age", 30);
map.set("city", "New York");

console.log(map.size);    // 3
console.log(map.get("name"));   // John

map.delete("age");
console.log(map.size);    // 2

WeakSet ve WeakMap

JavaScript'te ayrıca WeakSet ve WeakMap adında zayıf referanslı versiyonları da bulunmaktadır. Bu veri yapıları, içerdikleri referansları zayıf bir şekilde tutarlar, yani bu referanslar diğer yerlerde kullanılmadığında bellekten otomatik olarak silinirler.

Set ve Map'in Kullanımı

Set ve Map, benzersiz verileri saklamak, verilere hızlı erişim sağlamak ve veri işleme işlemlerini basitleştirmek için sıkça kullanılır. Set'ler, elemanların tekrar etmesine izin vermezken, Map'ler ise anahtar-değer çiftlerini saklayabilir.

Bu koleksiyonlar, JavaScript programlamasında veri yapılarını daha etkili ve düzenli bir şekilde kullanmayı sağlar. Hem Set hem de Map çok yönlü veri yapılarıdır ve geniş kullanım alanına sahiptirler.