Map metodlari
new Map() metodi
Siz new Map() konstruktoriga massiv o‘tkazish orqali Map yaratishingiz mumkin:
Misol
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
O‘zingiz sinab ko‘ring »
Map.get()
get() usuli yordamida xaritadagi kalitning qiymatini olasiz
Map.set()
Map’ga set() usuli bilan elementlar qo‘shishingiz mumkin:
Misol
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
O‘zingiz sinab ko‘ring »
set() usuli mavjud Map qiymatlarini o‘zgartirish uchun ham ishlatilishi mumkin:
Map.size
size xususiyati xaritadagi elementlar sonini qaytaradi:
Map.delete()
delete() metodi Map elementini olib tashlaydi:
Map.clear()
clear() usuli Map’dan barcha elementlarni olib tashlaydi:
Map.has()
has() usuli, agar Map’da kalit mavjud bo‘lsa, true qiymatini qaytaradi:
Misol
fruits.has("apples");
O‘zingiz sinab ko‘ring »
Buni sinab ko‘ring:
fruits.delete("apples");
fruits.has("apples");
O‘zingiz sinab ko‘ring »
Map.forEach()
forEach() usuli xaritadagi har bir kalit/qiymat juftligi uchun callback funksiyasini chaqiradi:
Misol
// List all entries
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value;
})
O‘zingiz sinab ko‘ring »
Map.entries()
entries() usuli xaritadagi [kalit, qiymatlar] bilan iterator obyektini qaytaradi:
Misol
// List all entries
let text = "";
for (const x of fruits.entries()) {
text += x;
}
O‘zingiz sinab ko‘ring »
Map.keys()
keys() usuli xaritadagi kalitlarga ega iterator obyektini qaytaradi:
Misol
// List all keys
let text = "";
for (const x of fruits.keys()) {
text += x;
}
O‘zingiz sinab ko‘ring »
Map.values()
values() usuli xaritadagi qiymatlar bilan iterator obyektini qaytaradi:
Misol
// List all values
let text = "";
for (const x of fruits.values()) {
text += x;
}
O‘zingiz sinab ko‘ring »
Xaritadagi qiymatlarni jamlash uchun values() usulidan foydalanishingiz mumkin:
Misol
// Sum all values
let total = 0;
for (const x of fruits.values()) {
total += x;
}
O‘zingiz sinab ko‘ring »
Obyektlar kalit sifatida
Misol
// Create Objects
const apples = {name: 'Apples'};
const bananas = {name: 'Bananas'};
const oranges = {name: 'Oranges'};
// Create a Map
const fruits = new Map();
// Add new Elements to the Map
fruits.set(apples, 500);
fruits.set(bananas, 300);
fruits.set(oranges, 200);
O‘zingiz sinab ko‘ring »
Esingizda bo‘lsin: Kalit ip ("olma") emas, balki obyekt (olma):
JavaScript Map.groupBy() metodi
ES2024 JavaScript’ga Map.groupBy() metodini qo‘shdi.
Map.groupBy() usuli takrorlanadigan elementlarni bo‘yicha guruhlaydi
callback qilish funksiyasidan qaytarilgan qiymatlarga.
Map.groupBy() metodi asl obyektni o‘zgartirmaydi.
Qaytish qiymati har bir guruh uchun kaliti bo‘lgan Map bo‘lib, bu yerda har bir kalit bog‘langan elementlar massiviga tayinlanadi.
Misol
// Create an Array
const fruits = [
{name:"apples", quantity:300},
{name:"bananas", quantity:500},
{name:"oranges", quantity:200},
{name:"kiwi", quantity:150}
];
// Callback function to Group Elements
function myCallback({ quantity }) {
return quantity > 200 ? "ok" : "low";
}
// Group by Quantity
const result = Map.groupBy(fruits, myCallback);
O‘zingiz sinab ko‘ring »
Brauzerlarda qo‘llab-quvvatlash
Map.groupBy() — ECMAScript 2024 imkoniyati.
JavaScript 2024 yangi brauzerlarda 2024-yil martidan beri qo‘llab-quvvatlanadi:
| Chrome 117 | Edge 117 | Firefox 119 | Safari 17.4 | Opera 103 |
| Sep 2023 | Sep 2023 | Oct 2023 | Okt 2024 | May 2023 |
Ogohlantirish
ES2024 xususiyatlari nisbatan yangi.
Eski brauzerlar uchun muqobil kod (Polyfill) kerak bo‘lishi mumkin
Object.groupBy() va Map.groupBy()
Object.groupBy() va Map.groupBy() o‘rtasidagi farq:
Object.groupBy() elementlarni JavaScript obyektiga guruhlaydi.
Map.groupBy() elementlarni Map obyektiga guruhlaydi.
Batafsil bilib oling:
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
