Retourner à la page d'accueil de TJS

Objet : Set

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

Syntaxe
var ensemble=new Set(Iterable liste)

Compatibilité 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 (Nombre d'éléments dans l'ensemble)

Méthodes
add() (Ajoute un élément à l'ensemble)
clear() (Supprime tous les éléments de l'ensemble)
delete() (Supprime l'élément de l'ensemble)
forEach() (Parcours un à un les éléments de l'ensemble Set)
has() (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

Mon nouveau livre Tout JavaScript chez Dunod

Tout JavaScript le livre chez DunodEn savoir plus
Sortie le 14 novembre 2019

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

Commandez en ligne

Chercher une fonction, un objet, ...

Le graph des objets Javascript



Chargement
en cours...
Le 09/04/2020 17:07:33 sur php7 en 32.5 ms