Sobes.tech
Junior

A cosa servono le strutture dati map e set?

sobes.tech AI

Risposta dell'AI

Map e Set sono collezioni per memorizzare dati.

  • Map: Memorizza coppie chiave-valore. Le chiavi possono essere di qualsiasi tipo. Permette di trovare, aggiungere e rimuovere elementi rapidamente tramite la chiave. Mantiene l'ordine di inserimento degli elementi.

    // Creazione di una mappa
    const myMap = new Map();
    
    // Aggiunta di elementi
    myMap.set('user1', { nome: 'John', età: 30 });
    myMap.set(1, 'chiave numerica');
    
    // Ottenere valore tramite chiave
    const userData = myMap.get('user1'); // { nome: 'John', età: 30 }
    
    // Controllare se la chiave esiste
    const hasKey = myMap.has(1); // true
    
    // Rimuovere elemento tramite chiave
    myMap.delete('user1');
    
    // Dimensione della mappa
    const size = myMap.size; // 1
    
    // Iterare sulla mappa
    for (const [key, value] of myMap) {
      console.log(`${key}: ${value}`);
    }
    
  • Set: Memorizza valori unici di qualsiasi tipo. Permette di verificare rapidamente se un elemento è presente, oltre ad aggiungere e rimuovere elementi. Mantiene l'ordine di inserimento.

    // Creazione di un Set
    const mySet = new Set();
    
    // Aggiunta di elementi
    mySet.add(1);
    mySet.add('ciao');
    mySet.add(1); // Duplicato, non verrà aggiunto
    
    // Verificare se un valore è presente
    const hasValue = mySet.has('ciao'); // true
    
    // Rimuovere un elemento
    mySet.delete(1);
    
    // Dimensione del Set
    const size = mySet.size; // 1
    
    // Iterare sul Set
    for (const value of mySet) {
      console.log(value);
    }
    

L'uso di Map è preferibile quando si desidera memorizzare dati associati a identificatori unici (chiavi) e effettuare ricerche rapide. Set viene utilizzato per memorizzare una collezione di valori unici e verificarne la presenza.