Skip to content

JavaScript Map Metodlari ​

Map obyekti ma'lumotlarni saqlash va boshqarish uchun bir nechta samarali metodlarni taqdim etadi.


1. new Map() ​

Yangi lug'at (Map) yaratish uchun ishlatiladi. Unga ikki o'lchamli massiv uzatish orqali boshlang'ich qiymatlar berish mumkin.

js
const mevalar = new Map([
  ["olma", 500],
  ["banan", 300]
]);

2. set(kalit, qiymat) — Qiymat qo'shish yoki o'zgartirish ​

Lug'atga yangi element qo'shadi yoki mavjud kalitning qiymatini yangilaydi.

js
const mevalar = new Map();
mevalar.set("olma", 500); // Qo'shish
mevalar.set("olma", 600); // O'zgartirish

3. get(kalit) — Qiymatni olish ​

Berilgan kalitga mos keladigan qiymatni qaytaradi. Agar kalit topilmasa, undefined qaytaradi.

js
console.log(mevalar.get("olma")); // 600

4. has(kalit) — Mavjudligini tekshirish ​

Lug'atda ma'lum bir kalit borligini tekshiradi va true yoki false qaytaradi.

js
console.log(mevalar.has("olma")); // true

5. delete(kalit) — O'chirish ​

Lug'atdan ko'rsatilgan kalit va uning qiymatini o'chirib tashlaydi.

js
mevalar.delete("olma");

6. clear() — Tozalash ​

Lug'atdagi barcha elementlarni bir yo'la o'chirib yuboradi.

js
mevalar.clear();

7. size — Hajmi ​

Lug'atdagi elementlar sonini bildiradi.

js
console.log(mevalar.size);

8. Iteratsiya metodlari ​

  • forEach(): Har bir kalit-qiymat juftligi uchun funksiya chaqiradi.
  • keys(): Barcha kalitlar uchun iterator qaytaradi.
  • values(): Barcha qiymatlar uchun iterator qaytaradi.
  • entries(): [kalit, qiymat] juftliklari uchun iterator qaytaradi.
js
mevalar.forEach((qiymat, kalit) => {
  console.log(`${kalit} = ${qiymat}`);
});

9. Map.groupBy() — Guruhlash (ES2024) ​

Massiv elementlarini ma'lum bir shart asosida guruhlab, Map ko'rinishida qaytaradi.

js
const maxsulotlar = [
  { nom: "olma", miqdor: 300 },
  { nom: "banan", miqdor: 500 },
  { nom: "kiwi", miqdor: 150 }
];

const guruhlangan = Map.groupBy(maxsulotlar, ({ miqdor }) => 
  miqdor > 200 ? "yetarli" : "kam"
);

Xulosa ​

Map metodlari oddiy obyektlarga qaraganda ko'proq imkoniyat va yuqori samaradorlik beradi. Ayniqsa, kalit sifatida istalgan turdagi ma'lumotlarni ishlata olish qobiliyati uni juda qulay qiladi.