(Pas de répétition, pas de drama 😌)
Bonjour, bel·le humain·e 💖
Aujourd’hui, nous rencontrons une structure de données d’élite dans l’univers JavaScript,
celle qui dit poliment mais fermement :
« S’il te plaît, pas de doublons » : Set.
Set, c’est le JavaScript qui :
- dit « J’aime la simplicité »
- garde la porte avec un « Les doublons ? Très peu pour moi »
- reste discret, mais redoutablement puissant
🤯 Si ça te parle…
Si tu as déjà :
- pensé « Je suis sûr que cet élément était déjà dans ce tableau… » 🤔
- fait des allers-retours sans fin entre
filter,indexOfetincludes - dit « J’ai des cheveux blancs à cause des valeurs en double » 👵🏻
👉 Bienvenue. Set est fait pour toi.
🧺 Qu’est-ce qu’un Set ? (La version la plus simple)
Un Set est une collection en JavaScript qui stocke des valeurs uniques.
La règle est très claire :
« Deux fois la même valeur ? Absolument pas. »
const mySet = new Set();
C’est tout.
- Pas de
key - Pas de confusion avec des
value - Pas de drama JSON
Juste des valeurs et de l’élégance ✨
🚫 Des valeurs en double ? Set dit : « Refusé. »
Voyons la personnalité de Set en action :
const numbers = new Set([1, 2, 2, 3, 3, 3]);
console.log(numbers);
// Set(3) {1, 2, 3}
Que s’est-il passé ?
2essaie d’entrer une deuxième fois → recalé à l’entrée3arrive pour la troisième fois → bloqué immédiatement
Comparons :
- Array : « Je prends tout, c’est ton problème. »
- Set : « Les doublons restent dehors. » 🚷
💡 Astuce pratique :
Si un tableau contient des doublons et que tu veux le nettoyer en une seule ligne, Set est ton meilleur allié.
➕ Ajouter des éléments à un Set (Poli mais ferme)
const fruits = new Set();
fruits.add("🍎");
fruits.add("🍌");
fruits.add("🍎");
console.log(fruits);
// Set(2) {"🍎", "🍌"}
Que s’est-il passé ?
- 🍎 première fois → bienvenue
- 🍌 arrive → entre donc
- 🍎 revient → « On s’est déjà rencontrés. »
Set n’est pas impoli, mais il est décisif 😌
💡 Astuce pratique :
La méthode add() est chaînable :
fruits.add("🍓").add("🍍");
❓ Ça existe ou pas ? (Le contrôle le plus rapide)
fruits.has("🍌"); // true
fruits.has("🍓"); // false
La beauté du truc :
- Pas de
includes - Pas de
indexOf - Pas de souci de performance
Juste :
has → est-ce que ça existe ?
Propre. Confiant. 💅
💡 Quand est-ce utile ?
- Vérifications de permissions
- Listes de favoris
- Savoir si quelque chose a déjà été traité
🗑️ Supprimer des éléments & faire le ménage
fruits.delete("🍌");
Pour les séparations une par une.
fruits.clear();
Adieu collectif.
La maison est propre, le Set est impeccable 🧹
💡 Astuce pratique :delete() retourne true ou false :
fruits.delete("🍎"); // true
fruits.delete("🍉"); // false
📏 La taille d’un Set (Attention ici !)
fruits.size;
Pas de length ❌
Parce que Set dit :
« Je ne suis pas un tableau, chéri·e. »
💡 Alerte entretien 🚨
Si tu écris mySet.length, tu obtiendras undefined.
Cette petite erreur piège beaucoup de monde 👀
🔄 Parcourir un Set (Calme et sérénité)
for (const fruit of fruits) {
console.log(fruit);
}
Ou bien :
fruits.forEach(fruit => console.log(fruit));
Set est :
- Ordonné (selon l’ordre d’insertion)
- Silencieux
- Sans drama
🧘♀️ Mode zen : ACTIVÉ.
🔁 Conversion Array ↔ Set (La partie légendaire)
Supprimer les doublons d’un tableau :
const numbers = [1, 1, 2, 3, 3, 4];
const uniqueNumbers = [...new Set(numbers)];
console.log(uniqueNumbers);
// [1, 2, 3, 4]
Cette seule ligne :
- Sauve des entretiens
- Nettoie des bugs
- Fait dire « Comment tu as fait ça ? » 😌
💡 Astuce en or :
Pour convertir un Set en tableau :
Array.from(new Set(numbers));
🎯 Quand utiliser un Set ?
✔️ Si tu ne veux pas de doublons
✔️ Si tu as besoin de vérifications rapides « existe ou pas ? »
✔️ Si tu veux nettoyer un tableau
✔️ Si tu veux un code plus lisible et plus propre
Set est là…
Il t’attend tranquillement 🖤
💌 Mot de la fin
Set est la structure de données JavaScript qui :
- Déteste le drama
- Aime la simplicité
- Vit selon la règle : « Moins, mais mieux »
Si ton code se répète…
Peut-être que, comme dans la vie…
👉 Tu as besoin d’un Set 😏

