Set.prototype[@@iterator]()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

La valeur initiale de la propriété @@iterator est le même objet fonction que la valeur initiale de la propriété Set.prototype.values.

Exemple interactif

const set1 = new Set();

set1.add(42);
set1.add("forty two");

const iterator1 = set1[Symbol.iterator]();

console.log(iterator1.next().value);
// Expected output: 42

console.log(iterator1.next().value);
// Expected output: "forty two"

Syntaxe

js
monSet[Symbol.iterator];

Valeur de retour

La fonction associée au symbole @@iterator de l'objet. Par défaut, c'est la fonction values().

Exemples

Utiliser [@@iterator]()

js
const monSet = new Set();
monSet.add("0");
monSet.add(1);
monSet.add({});

const setIter = monSet[Symbol.iterator]();

console.log(setIter.next().value); // "0"
console.log(setIter.next().value); // 1
console.log(setIter.next().value); // {}

Utiliser [@@iterator]() avec une boucle for..of

js
const monSet = new Set();
monSet.add("0");
monSet.add(1);
monSet.add({});

for (const v of monSet) {
  console.log(v);
}

Spécifications

Specification
ECMAScript® 2025 Language Specification
# sec-set.prototype-%symbol.iterator%

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi