Set JavaScript

JavaScript Set - это集合, содержащая уникальные значения.

Каждое значение может встречаться в Set только один раз.

Значения могут быть любыми типами, простыми значениями или объектами.

Как создать Set

JavaScript Set можно создать следующим образом:

  1. Передать массив в new Set().
  2. Создать пустой Set и использовать add() Добавить значение.

Метод new Set()

Передать массив в new Set() Конструктор:

Пример

// Создать Set
const letters = new Set(["a","b","c"]);

Попробуйте сами

Создать Set и добавить значение:

Пример

// Создать Set
const letters = new Set();
// Добавить значение в Set
letters.add("a");
letters.add("b");
letters.add("c");

Попробуйте сами

Создать Set и добавить переменные:

Пример

// Создать Set
const letters = new Set();
// Создать переменные
const a = "a";
const b = "b";
const c = "c";
// Добавить переменную в Set
letters.add(a);
letters.add(b);
letters.add(c);

Попробуйте сами

Метод add()

Пример

letters.add("d");
letters.add("e");

Попробуйте сами

Если добавить одинаковый элемент, то будет сохранен только первый:

Пример

letters.add("a");
letters.add("b");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");

Попробуйте сами

Выписать элементы

Можно использовать for..of Циклически выписать все элементы Set (значения):

Пример

// Создать Set
const letters = new Set(["a", "b", "c"]);
// Выписать все элементы
let text = "";
for (const x of letters) {
  text += x;
}

Попробуйте сами

Set - это объект

typeof Возвращает object:

typeof letters;      // возвращает object

Попробуйте сами

instanceof Set Возвращает true:

letters instanceof Set;  // возвращает true

Попробуйте сами

Полное руководство по Set

Для полной информации посетите наш:Руководство JavaScript Set.

Эта книга включает описание всех свойств и методов Set с примерами.

Поддержка браузерами

Set является Свойства ES6(JavaScript 2015).

С июня 2017 года все современные браузеры поддерживают ES6:

Chrome Edge Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
Май 2016 года Апрель 2017 года Июнь 2017 года Сентябрь 2016 года Июнь 2016 года

Internet Explorer не поддерживает Set.