Подтвердить что ты не робот

Как я могу отсортировать ES6 `Set`?

new Set(['b', 'a', 'c']).sort() throws TypeError: set.sort is not a function. Как я могу сортировать Set для обеспечения определенного порядка итераций?

4b9b3361

Ответ 1

Множество не является упорядоченной абстрактной структурой данных.

A Set однако всегда имеет один и тот же порядок итераций - порядок вставки элемента [1], поэтому, когда вы его итерации (методом итерации, вызывая Symbol.iterator или с помощью цикла for..), вы можете всегда ожидайте этого.

Вы всегда можете преобразовать набор в массив и отсортировать его.

Array.from(new Set(["b","a","c"])).sort();
[...(new Set(["b","a","c"]))].sort(); // with spread.

[1] forEach и CreateSetIterator