Новые методы в Set()

Для начала вспомниv, что такое Set() . Он похож на массив, за исключением того, что каждое значение может быть сохранено только один раз. То бишь - только уникальные значения можем хранить в него. Раньше было скудное кол-во методов, мы могли сделать crud и использовать методы prototype типо .values()

Теперь во всех зеленых браузерах и 22+ ноде есть новые методы сравнение и объединения set’ов:

  • set1.intersection(set2) Объединяет два set’а и возвращает те значения, что есть в обоих set’ах.
  • set1.union(set2) возвращает новое множество со всеми элементами в обоих set’ах.
  • set1.difference(set2) возвращает новый set в котором будут только уникальные значения из первого set.
  • set1.symmetricDifference(set2) возвращает новый set, с теми значениями, которые не повторяются между двумя set’ами
  • set1.isSubsetOf(set2) возвращает boolean - является первый подмножеством второго set’а (чувствую себя на алгебре в школе)
  • set1.isSupersetOf(set2) как предыдущий только наоборот - является ли второй подмножеством первого.
  • set1.isDisjointFrom(set2) возвращает boolean - есть ли общие элементы у двух set’ов

Мне кажется это то, чего нам так не хватало. Теперь всевозможные проверки на уникальность и прочее делать будет сильно проще. Ждем как обновление раскатится по юзерам.

Менторство от автора - @H8err | getMentor.dev