Разбиране на набори в 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);

Свойства и методи

Наборите имат различни свойства и методи, които ни помагат да работим с тях за решаване на различни проблеми. Свойствата и методите са толкова прости, колкото и създаването им. Можете лесно да получите функционалността на методите със самите им имена. Нека ги видим един по един.

  9 създатели на етажни планове за визуализиране на стаи в 2D и 3D

размер

Размерът на свойството връща броя на елементите, присъстващи в набора.

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.

  Как да използвате частно сърфиране в Safari на iPhone или iPad

Нека да видим стъпката за решаването му.

  • Инициализиране на масив с фиктивни данни.
  • Инициализирайте празен набор.
  • Итериране на масива от елементи.
    • Добавете всеки елемент към комплекта.
    • Той автоматично ще премахне дублиращите се елементи.
  • Инициализирайте празен масив.
  • Обходете набора и добавете всеки елемент към новия масив.
  • Отпечатайте новия масив.

Надявам се, че можете да го разрешите сами. Ако ви е трудно да кодирате, вижте решението по-долу.

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. Можете да ги използвате в следващия си проект. Продължете и се възползвайте от всяка част от него.

  Как да активирате или деактивирате множество изтегляния на файлове в Chrome

Приятно кодиране 👨‍💻