Retourner à la page d'accueil de TJS

Objet : Set

Constructeur d'un ensemble d'éléments uniques

Syntaxe
var ensemble=new Set(Iterable liste)

Compatible tous navigateurs
ES6
ECMAScript 2015

Description
Set() est le constructeur d'un ensemble d'éléments uniques interdisant tout doublon.

Attend en paramètre une liste d'éléments itérables (comme un tableau ou des caractères d'une chaîne).

La structure Set semble proche de la structure Array, mais diffère sur :
- l'impossibilité de stocker des doublons
- l'accès aux éléments n'est pas possible avec un indice mais utilise la boucle for avec le mot clé of. (Voir exemple 2 de cette page)


Propriété
size
ES6
Nombre d'éléments dans l'ensemble

Méthodes
add()
ES6
Ajoute un élément à l'ensemble
clear()
ES6
Supprime tous les éléments de l'ensemble
delete()
ES6
Supprime l'élément de l'ensemble
forEach()
ES6
Parcours un à un les éléments de l'ensemble Set
has()
ES6
Retourne true si l'élément est présent dans l'ensemble

Exemple 1 : Exemples d'usage de Set()
Code source
<script type="text/javascript">
 const jours=new Set(["Lun", "Mar", "Mer", "Jeu", "Ven", "Sam", "Dim"]);
 console.log(jours);
 console.log(typeof jours);
 console.log(jours.size);
 console.log(["Lun", "Mar", "Mer", "Jeu", "Ven", "Sam", "Dim"]);
</script>

Résultat
Emulation de la console
Explication
Construit l'ensemble jours avec un tableau des jours de la semaine.
Affiche l'élément dans la console, avec son type et le nombre d'éléments.

Exemple 2 : Accès aux éléments
Code source
<script type="text/javascript">
const jours=new Set(["Lun", "Mar", "Mer", "Jeu", "Ven", "Sam", "Dim"]);
for (value of jours) {
  console.log(value);
}
</script>

Résultat
Emulation de la console
Explication
L'accès aux éléments n'est pas possible avec la notation indicée.

Exemple 3 : Déboublonner un tableau avec Set
Code source
<script type="text/javascript">
 var tab=["TJS", Math.PI, "TJS", 2000, 10, "TJS", 3.141592653589793];
 console.log(tab);
 tempSet=new Set(tab);
 console.log(tempSet);
 uniqueTab=[... tempSet];
 console.log(uniqueTab);
</script>

Résultat
Emulation de la console
Explication
Cet exemple utilise la particularité des ensembles Set qui n'autorisent pas les doublons pour dédoublonner un tableau.
L'ensemble tempSet est créé à partir du constructeur Set() avec le tableau d'origine en paramètre.
Pour transformer l'ensemble en objet Array, on utilise la syntaxe [... tableau].

Voir aussi l'exemple de la méthode filter() pour une autre solution technique.
Page mise à jour le

Nouvelle édition Tout JavaScript chez Dunod

Tout JavaScript le livre chez DunodEn savoir plus
Sortie le 21 octobre

Version papier à 29€90
Format électronique à 22€99.

Commandez en ligne

Chercher une fonction, un objet, ...

Le 25/11/2020 23:51:57 sur php7 en 21.79 ms