Набори — це новий додаток до 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.
Давайте подивимося, як це зробити.
- Ініціалізація масиву фіктивними даними.
- Ініціалізувати порожній набір.
- Ітерація по масиву елементів.
- Додайте кожен елемент до набору.
- Він автоматично видалить повторювані елементи.
- Ініціалізувати порожній масив.
- Перебираємо набір і додаємо кожен елемент до нового масиву.
- Роздрукуйте новий масив.
Сподіваюся, ви зможете вирішити це самостійно. Якщо вам важко кодувати, перегляньте рішення нижче.
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. Ви можете використовувати їх у своєму наступному проекті. Ідіть вперед і використовуйте кожен шматочок.
Щасливого кодування 👨💻