Розуміння множин у JavaScript

Набори — це новий додаток до 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);

Властивості та методи

Множини мають різні властивості та методи, які допомагають нам працювати з ними для вирішення різних проблем. Властивості та методи такі ж прості, як і їх створення. Ви можете легко отримати функціональність методів за їхніми назвами. Давайте розглянемо їх по одному.

розмір

Властивість size повертає кількість елементів у наборі.

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);

ключі

Метод keys повертає ітератор елементів набору в порядку вставки.

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.

  9 найкращих сайтів, де можна знайти статистику для наступної публікації в блозі

Давайте подивимося, як це зробити.

  • Ініціалізація масиву фіктивними даними.
  • Ініціалізувати порожній набір.
  • Ітерація по масиву елементів.
    • Додайте кожен елемент до набору.
    • Він автоматично видалить повторювані елементи.
  • Ініціалізувати порожній масив.
  • Перебираємо набір і додаємо кожен елемент до нового масиву.
  • Роздрукуйте новий масив.

Сподіваюся, ви зможете вирішити це самостійно. Якщо вам важко кодувати, перегляньте рішення нижче.

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. Ви можете використовувати їх у своєму наступному проекті. Ідіть вперед і використовуйте кожен шматочок.

  9 найкращих онлайн-пошуків ASN, скриптів і API

Щасливого кодування 👨‍💻