Наборы — это новое дополнение к JavaScript в ES6. Давайте узнаем об этом.
Что за наборы?
Как использовать их в JavaScript?
И какие методы предлагает для решения проблем?
Давайте узнаем ответы на все вопросы в этом уроке.
Оглавление
Наборы
Как видно из названия, набор — это набор уникальных элементов. Он не хранит повторяющиеся значения.
Наборы в JavaScript будут хранить элементы в порядке вставки. Итак, они упорядочены в JavaScript. И он будет хранить примитивные типы данных или объекты.
Давайте посмотрим на синтаксис наборов в JavaScript.
Надеюсь, у вас есть IDE, чтобы попрактиковаться в следующем.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); console.log(names); const randomWord = new Set("Hiiiiiii"); console.log(randomWord); const numbers = new Set([5, 5, 5, 2, 1, 1, 2, 3]); console.log(numbers);
Свойства и методы
У наборов есть разные свойства и методы, которые помогают нам работать с ними для решения разных задач. Свойства и методы так же просты, как и их создание. Вы можете легко получить функциональность методов с их именами. Давайте посмотрим их один за другим.
размер
Размер свойства возвращает количество элементов, присутствующих в наборе.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); console.log(`Size: ${names.size}`);
добавлять
Метод add используется для добавления нового элемента в набор. Если новый элемент уже присутствует в наборе, то он его не добавит.
// empty set const names = new Set(); names.add("John"); names.add("Harry"); names.add("Wick"); names.add("Jack"); names.add("Harry"); console.log(names);
имеет
Метод принимает один аргумент и возвращает true, если элемент присутствует в наборе, иначе возвращает false.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); console.log(names.has("Harry")); console.log(names.has("Alley"));
Удалить
Как и следовало ожидать, метод delete принимает аргумент и удаляет его из множества. Он не выдает никакой ошибки, даже если данный аргумент отсутствует в наборе.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); names.delete("John"); console.log(names);
записи
Записи метода возвращают итератор, содержащий массивы пар ключ-значение в порядке вставки. Здесь ключ и значение совпадают.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); const entries = names.entries(); console.log(entries.next().value); console.log(entries.next().value); console.log(entries.next().value); console.log(entries.next().value); console.log(entries.next().value);
ключи
Ключи метода возвращают итератор множества элементов в порядке вставки.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); const keys = names.keys(); console.log(keys.next().value); console.log(keys.next().value); console.log(keys.next().value); console.log(keys.next().value); console.log(keys.next().value);
ценности
Значения метода возвращают итератор элементов набора в порядке вставки, аналогичном ключам метода.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); const values = names.values(); console.log(values.next().value); console.log(values.next().value); console.log(values.next().value); console.log(values.next().value); console.log(values.next().value);
Чисто
Метод clear удаляет все элементы из набора.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); names.clear(); console.log(names);
для каждого
Метод forEach используется для перебора набора и получения из него всех элементов по одному.
const names = new Set(["John", "Harry", "Wick", "Jack", "Harry"]); names.forEach((element) => { console.log(element); });
Разнообразный
Давайте рассмотрим простое применение наборов с помощью программы. Учитывая массив, удалите из него все повторяющиеся значения. Чтобы решить проблему, мы можем использовать свойство set.
Давайте посмотрим, как решить эту проблему.
- Инициализировать массив фиктивными данными.
- Инициализировать пустой набор.
- Перебрать массив элементов.
- Добавьте каждый элемент в набор.
- Он автоматически удалит повторяющиеся элементы.
- Инициализировать пустой массив.
- Переберите набор и добавьте каждый элемент в новый массив.
- Распечатайте новый массив.
Я надеюсь, что вы можете решить это самостоятельно. Если вам сложно кодировать, взгляните на решение ниже.
const arr = ["John", "Harry", "Wick", "Jack", "Harry"]; const temp = new Set(); arr.forEach((element) => { temp.add(element); }); const newArr = []; temp.forEach((element) => { newArr.push(element); }); console.log(newArr);
Вывод
Теперь у вас есть все знания, необходимые для работы с множествами в JavaScript. Вы можете использовать их в своем следующем проекте. Идите вперед и используйте каждую частичку этого.
Удачного кодирования 👨💻