Структураҳои маълумотии map ва set барои чӣ истифода мешаванд?
sobes.tech AI
Ҷавоб аз AI
Map ва Set — коллексия барои нигоҳдории маълумот.
-
Map: Ҷуфтҳои калид-арзишро нигоҳ медорад. Калидҳо метавонанд ҳар гуна навъ бошанд. Он имкон медиҳад, ки ба таври зуд элементҳоро дар асоси калид ҷустуҷӯ, илова ва хориҷ кардан мумкин бошад. Рақамро дар тартиби воридшавии элементҳо нигоҳ медорад.// Эҷоди Map const myMap = new Map(); // Илова кардани элементҳо myMap.set('user1', { ном: 'John', синнусол: 30 }); myMap.set(1, 'калиди рақамӣ'); // Гирифтани арзиш дар асоси калид const userData = myMap.get('user1'); // { ном: 'John', синнусол: 30 } // Санҷидани мавҷудияти калид const hasKey = myMap.has(1); // true // Ҳамла ба элементи калид myMap.delete('user1'); // Андозаи Map const size = myMap.size; // 1 // Итерировать дар Map for (const [key, value] of myMap) { console.log(`${key}: ${value}`); } -
Set: Арзиши беназири ҳар гуна навъро нигоҳ медорад. Он имкон медиҳад, ки зуд муайян шавад, ки оё элемент мавҷуд аст, инчунин илова кардан ва хориҷ кардани элементҳоро. Рақамро дар тартиби воридшавии элементҳо нигоҳ медорад.// Эҷоди Set const mySet = new Set(); // Илова кардани элементҳо mySet.add(1); mySet.add('салом'); mySet.add(1); // Такрор, илова намешавад // Санҷидани мавҷудияти элемент const hasValue = mySet.has('салом'); // true // Ҳамла ба элемент mySet.delete(1); // Андозаи Set const size = mySet.size; // 1 // Итерировать дар Set for (const value of mySet) { console.log(value); }
Истифодаи Map афзалият дорад, вақте ки шумо мехоҳед маълумотҳоро, ки бо идентификаторҳои беназири (калидҳо) алоқаманданд, нигоҳ доред ва ҷустуҷӯи зуд анҷом диҳед. Set барои нигоҳ доштани коллексияи арзишҳои беназир ва санҷиши мавҷудияти онҳо истифода мешавад.