💡 Maîtrisez l'objet Map en JavaScript : Astuces 🔥 et Bonnes Pratiques ✅

Temps de lecture : 9 minutes environ.

Introduction à l'objet Map en JavaScript : création de tableaux associatifs

Dans ce tutoriel, nous allons découvrir l’objet Map en JavaScript. Cet objet, introduit avec ES6 (2015), permet de créer des tableaux associatifs tout en garantissant l’ordre d’insertion des clés. Il offre des fonctionnalités avancées pour manipuler des paires clé-valeur avec une grande flexibilité.

Qu’est-ce qu’un objet Map ?

Un Map est une collection de paires clé-valeur, où :

  • Les clĂ©s peuvent ĂŞtre de n’importe quel type (objets, fonctions, primitives, etc.).
  • L’ordre des clĂ©s est garanti par leur insertion.

Création d’un Map

Pour créer un Map :

const map1 = new Map();
console.log(map1.size); // Affiche 0

Ajout de paires clé-valeur avec set

La méthode set permet d’ajouter ou de mettre à jour des paires clé-valeur.

map1.set('a', 'Bonjour');
map1.set('b', 'Au revoir');
console.log(map1.size); // Affiche 2
console.log(map1);
// Map(2) { 'a' => 'Bonjour', 'b' => 'Au revoir' }

Accès aux valeurs avec get

Pour récupérer la valeur associée à une clé :

console.log(map1.get('a')); // Affiche "Bonjour"

Suppression et vérification de clés

  • Supprimer une clĂ© :
map1.delete('a');
console.log(map1.size); // Affiche 1
  • VĂ©rifier l’existence d’une clĂ© :
console.log(map1.has('b')); // Affiche true
console.log(map1.has('a')); // Affiche false

Différence clé entre Map et un objet classique

Contrairement aux objets {}, un Map :

  • Accepte des clĂ©s non primitives (objets, fonctions, etc.).
  • Maintient l’ordre des clĂ©s.

Itération sur un Map

Vous pouvez itérer sur les clés, valeurs ou entrées :

Itérer sur les entrées :

for (const [key, value] of map1.entries()) {
console.log(`${key}: ${value}`);
}

Itérer uniquement sur les clés :

for (const key of map1.keys()) {
console.log(key);
}

Itérer uniquement sur les valeurs :

for (const value of map1.values()) {
console.log(value);
}

Exemple pratique : Map imbriqué

Les Map peuvent être imbriqués pour représenter des structures complexes, comme des clients avec des informations détaillées :

Création d’un Map de clients :

const customers = new Map();

const customer1 = new Map();
customer1.set('firstName', 'Bernard');
customer1.set('lastName', 'Dupont');

const customer2 = new Map();
customer2.set('firstName', 'Gilles');
customer2.set('lastName', 'Durand');

customers.set('client1', customer1);
customers.set('client2', customer2);

console.log(customers);

Itération sur les clients :

for (const [key, customerMap] of customers.entries()) {
console.log(`${key}: ${customerMap.get('firstName')} ${customerMap.get('lastName')}`);
}
// RĂ©sultat :
// client1: Bernard Dupont
// client2: Gilles Durand

Utilisation avancée : transformation et exportation

Un Map peut ĂŞtre converti en tableau ou JSON :

const mapToArray = Array.from(customers.entries());
console.log(mapToArray);

const mapToObject = Object.fromEntries(customers);
console.log(JSON.stringify(mapToObject));

Conclusion

L’objet Map est un outil puissant pour gérer des données structurées sous forme de paires clé-valeur. Il est idéal pour les tableaux associatifs avec des clés non primitives, tout en offrant des méthodes robustes pour l’itération et la manipulation.

console.log(map1.has('b')); // Affiche true
console.log(map1.has('a')); // Affiche false
map1.delete('a');
console.log(map1.size); // Affiche 1

Obtenir de l'aide

Pour obtenir de l'aide, vous pouvez accéder au serveur Discord pour une entraide par chat.

💡 Maîtrisez l'objet Map en JavaScript : Astuces 🔥 et Bonnes Pratiques ✅
Article publié le

Catégories : Javascript js

Mots-clés : Javascript js tableaux

Partager : Partager sur Facebook Partager sur Twitter Partager sur LinkedIn