đŸ—ș JavaScript Maps : DĂ©couvrez des structures de donnĂ©es puissantes (et vraiment, dĂ©couvrez-les 😎)

đŸ—ș JavaScript Maps : DĂ©couvrez des structures de donnĂ©es puissantes (et vraiment, dĂ©couvrez-les 😎)

Bonjour 💖
Aujourd’hui, nous allons faire une rencontre profonde, chaleureuse et pleine de rires avec une structure de donnĂ©es charismatique qui se promĂšne dans l’univers JavaScript en disant :
« Je ne suis pas un objet, je suis une Map. »

Cet article ne va pas juste effleurer le sujet.
Cet article sera :

  • rempli d’exemples đŸ§Ș
  • plein d’analogies issues de la vraie vie 🧠
  • chargĂ© d’astuces pratiques đŸ› ïž
  • de ceux qui te font dire : « Aaaah, maintenant je comprends ! » 💡

Si tu es prĂȘt(e)

Mettons Map sur scĂšne đŸŽ€


đŸ€” Qu’est-ce qu’une Map en JavaScript ? (En quoi est-elle diffĂ©rente d’un Object?)

En JavaScript, la plupart des gens utilisent automatiquement les Object pour stocker des données.
Mais Map arrive et dit :

« Moi, je fais ça de maniĂšre un peu plus premium. » 😌

Une Map est une structure de donnĂ©es basĂ©e sur le principe clé–valeur, mais qui le fait de façon plus claire, plus flexible et plus performante.

🔑 Quelle est la plus grande diffĂ©rence ?

Dans une Map, tu peux utiliser ABSOLUMENT TOUT comme clé :

  • string
  • number
  • boolean
  • object
  • array
  • function

Avec les Object, on reste souvent coincé avec des clés de type string.


đŸ› ïž Comment crĂ©er une Map

Le début est trÚs simple :

const myMap = new Map();

Que fait cette ligne ?

  • Elle crĂ©e une nouvelle Map
  • Elle est vide pour l’instant
  • Comme un tout nouveau carnet 📓

Tu peux aussi créer une Map avec des données initiales :

const userMap = new Map([
  ["name", "Cansu"],
  ["age", 25],
  ["isDeveloper", true]
]);

📌 Chaque ligne est une paire [clĂ©, valeur].
Map dit : « Merci d’arriver bien organisĂ©(e). » 😌


➕ Ajouter des donnĂ©es : set()

Le mot prĂ©fĂ©rĂ© de Map : set 💅

myMap.set("city", "Istanbul");
myMap.set(34, "Plaque d’immatriculation");
myMap.set(true, "Oui, ceci peut aussi ĂȘtre une clĂ©");

Que nous dit ce code ?

  • set(key, value) → ajoute une donnĂ©e
  • Les clĂ©s sont uniques (une clĂ© identique Ă©crase l’ancienne valeur)
  • Le type de donnĂ©e n’a aucune importance — Map est un esprit libre đŸ•Šïž

đŸ”„ Astuce pro :

myMap.set("a", 1).set("b", 2).set("c", 3);

Oui
 tu peux les enchaüner 😎


🔍 Lire des donnĂ©es : get()

On veut toujours rĂ©cupĂ©rer ce qu’on ajoute.
Map ne te brise jamais le cƓur 💖

myMap.get("city"); // "Istanbul"
myMap.get(34);     // "Plaque d’immatriculation"

Et si ça n’existe pas ?

myMap.get("country"); // undefined

Pas de drame.
Pas d’erreur.
Elle dit simplement : « Pas ici. » 😌


❓ La clĂ© existe-t-elle ? has()

Pour vérifier si une clé existe :

myMap.has("city");    // true
myMap.has("country"); // false

🧠 Analogie de la vraie vie :
« Y a-t-il du chocolat dans ce placard ? » đŸ«


❌ Supprimer des donnĂ©es : delete()

Comme quand tu enlùves certaines choses de ta vie

Tu peux aussi les enlever d’une Map 😌

myMap.delete(34);

Si elle existe, elle est supprimée.
Sinon, Map continue tranquillement.
Zéro drama.


đŸ§č Tout supprimer : clear()

Pour celles et ceux qui disent : « J’ai besoin d’un nouveau dĂ©part » :

myMap.clear();

La Map est impeccable.
Nouvelle page, nouveaux espoirs ✹


📏 Taille d’une Map : size

La fameuse galĂšre avec les Object :

Object.keys(obj).length;

Map regarde ça et répond simplement :

myMap.size;

C’est tout.
Minimalisme ✹


🔁 Parcourir une Map

Avec forEach :

myMap.forEach((value, key) => {
  console.log(key, value);
});

📌 L’ordre est conservĂ©
📌 Parcourt dans l’ordre d’insertion
📌 Tu gardes le contrîle 😎


Avec for…of (la mĂ©thode la plus cool)

for (const [key, value] of myMap) {
  console.log(key, value);
}

Cette structure est nativement compatible avec Map.
Lisible, propre, stylĂ©e 💅


🧠 Utiliser des objets comme clĂ©s dans une Map (lĂ  oĂč la magie opĂšre)

const user = { id: 1 };
const settings = new Map();

settings.set(user, "Admin");

👉 MĂȘme objet = mĂȘme clĂ©
👉 Impossible de faire ça correctement avec un Object

Cette fonctionnalitĂ© rend Map lĂ©gendaire đŸ’„


🆚 Map vs Object (comparaison rĂ©aliste)

FonctionnalitéMapObject
Types de clésToutMajoritairement string
OrdreConservéNon garanti
Taille.sizeTravail supplémentaire
ParcoursTrùs propreÉtapes en plus
PerformanceđŸ”„đŸ€·â€â™€ïž

🎯 Quand faut-il utiliser une Map ?

✔ Quand tu as besoin d’objets ou de fonctions comme clĂ©s
✔ Quand l’ordre est important
✔ Quand tu ajoutes/supprimes souvent des Ă©lĂ©ments
✔ Quand tu veux un code plus lisible et plus propre

👉 Map est le bon choix💖


💡 Mini astuces pratiques

✹ Les Map ne se convertissent pas directement en JSON (il faut passer par un tableau)
✹ Les Map adorent les rĂ©fĂ©rences, les primitives doivent correspondre exactement
✹ Tu peux cloner une Map avec new Map(existingMap)


❀ Conclusion : Map = Monter de niveau en JavaScript

Quand tu commences à utiliser les Map, tu ressens ça :

« Je n’écris plus du code au hasard
 je sais ce que je fais. » 😎

Code plus propre
Moins de bugs
Plus de sĂ©rĂ©nitĂ© 🌿

Comments

No comments yet. Why don’t you start the discussion?

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile ißaretlenmißlerdir