Преобразование коллекций Set Коллекции Set можно преобразовывать в массивы. Можно также выполнять обратную операцию - массивы преобразовывать в Set. Давайте посмотрим, как это делается. Преобразование в массив Пусть у нас есть некоторая коллекция Set: let set = new Set([1, 2, 3]); 📌 #instr || Фронтендщик
Фронтендщик
Все для frontend developer, шуточки, тесты, статьи Администрация/Реклама @vtopua
Графики
📊 Средний охват постов
📉 ERR % по дням
📋 Публикации по дням
📎 Типы контента
Лучшие публикации
20 из 20Можно преобразовать ее в массив, используя прием с деструктуриацией: let arr = [...set]; А можно воспользоваться методом Array.from: let arr = Array.from(set); 📌 #instr || Фронтендщик
Удаление дублей из массива через Set С помощью коллекций Set легко можно удалять дубли из массивов. Для этого массив нужно преобразовать в коллекцию Set. Так как эта коллекция не может содержать дубли элементов, то при преобразовании они исчезнут. 📌 #instr || Фронтендщик
А теперь преобразуем нашу коллекцию обратно в массив: let arr = [1, 2, 3, 1, 3, 4]; let res = [...new Set(arr)]; console.log(res); // выведет [1, 2, 3, 4] 📌 #instr || Фронтендщик
Преобразование массива в Set Пусть у нас есть массив: let arr = [1, 2, 3]; Давайте преобразуем его в коллекцию Set: let set = new Set(arr); 📌 #instr || Фронтендщик
Давайте переберем ее циклом: for (let elem of set) { console.log(elem); } 📌 #instr || Фронтендщик
Перебор коллекций Set циклом Пусть у нас есть некоторая коллекция Set: let set = new Set; set.add(1); set.add(2); set.add(3); 📌 #instr || Фронтендщик
Пусть пользователь кликает на эти абзацы в произвольном порядке. Давайте сделаем так, чтобы по нажатию на кнопку в конец каждого абзаца, на который был совершен клик, был добавлен восклицательный знак. Решим задачу через Set. 📌 #instr || Фронтендщик
Проверка наличия значения Проверить наличие значения в коллекции можно с помощью метода has: let set = new Set; set.add(1); set.add(2); set.add(3); console.log(set.has(1)); 📌 #instr || Фронтендщик
Очистка коллекции Очистить всю коллекцию можно с помощью метода clear: let set = new Set; set.add(1); set.add(2); set.add(3); set.clear(); 📌 #instr || Фронтендщик