Set.prototype[@@iterator]()

@@iterator 属性的初始值和 values 属性的初始值是同一个函数。

尝试一下

Syntax

mySet[Symbol.iterator]

Return value

返回 Set iterator 函数,默认值是 values() 函数。

Examples

Using [@@iterator]()

js

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

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

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

Using [@@iterator]() with for..of

js

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

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

Specifications

Specification
ECMAScript Language Specification
# sec-set.prototype-@@iterator

Browser compatibility

BCD tables only load in the browser

See also