Sobes.tech
Junior

Ի՞նչ նպատակով են օգտագործվում 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 օգտագործվում է յուրահատուկ արժեքների հավաքածու պահելու և դրանց առկայությունը ստուգելու համար: