Set - коллекция для хранения множества значений, причём каждое значение может встречаться лишь один раз. Например, к нам приходят посетители, и мы хотели бы сохранять всех, кто пришёл. При этом повторные визиты не должны приводить к дубликатам, то есть каждого посетителя нужно «посчитать» ровно один раз.
Давно не было роликов о es, ура, наконец то интересности пошли, можно еще рассказать о WeakSet/Map, менее широкоиспользуемые (хотя Set/Map сложно назвать пока широко используемыми), но тоже интересные типы
В видео уроках я стараюсь не использовать сторонние инструменты без необходимости. Как и в программировании я стремлюсь к тому чтобы "модули" (видео в данном случае) не имели жёстких зависимостей :-)
Есть данные с повторяющимися ключами . Допустим ['text','text''user''user'] И нужно получить уникальное значение. то new Set(['text','text''user''user']) вернет только [text user]
set.add({ className: 'button'}); set.add({ className: 'button'}); set.add({ className: 'button'}); Так мы создадим в коллекции, три визуально похожих объекта, но которые будут ссылаться на разные участки памяти?
ьне кажется, что set хорошо сипользовать для вывода информации на страницу с помощью шаблонизатора pug, в том случае, если нужно избежать повторяющихся значений
Вот пример: Пользователь может выбрать элементы на странице. Выбранные элементы можно хранить в сете и быть уверенным что два одинаковых элемента не будут выбраны.
функции сбора статистики по полученым даным, где нужно знать точное число уникальных значений иначе статистика будет неверной. делал недавно подобное , исключительно на сетах.
Set - коллекция для хранения множества значений, причём каждое значение может встречаться лишь один раз.
Например, к нам приходят посетители, и мы хотели бы сохранять всех, кто пришёл. При этом повторные визиты не должны приводить к дубликатам, то есть каждого посетителя нужно «посчитать» ровно один раз.
Оч полезно. Js недавно использую в работе, и про оператор развёртывания не знал. Теперь буду пользоваться. Спасибо большое!!!
Урок бомба! Все по полочкам.
Я как раз завтра домашку делаю - проверка пароля в инпуте на уникальность букв. Теперь понял как буду делать
в чём бомба, тут же просто дока пересказана? Где примеры и область применения?
@@timura.6658 я не спорю. Наверное. Просто именно тогда мне именно это объяснение понятно стало. А можно на доку ссылку?
Огонь! Спс. Только про .size забыл сказать.
Офигенный урок если честно
Круть!
Давно не было роликов о es, ура, наконец то интересности пошли, можно еще рассказать о WeakSet/Map, менее широкоиспользуемые (хотя Set/Map сложно назвать пока широко используемыми), но тоже интересные типы
WeakSet, Map и WeakMap - темы слудующих уроков.
Кстати для того, что бы не ползать постоянно в консоль можно поставить -Quokka для vs code и сразу все будет видно.
В видео уроках я стараюсь не использовать сторонние инструменты без необходимости. Как и в программировании я стремлюсь к тому чтобы "модули" (видео в данном случае) не имели жёстких зависимостей :-)
Ну тут как раз больше для наглядности будет.
где этот set можно использовать?
Есть данные с повторяющимися ключами . Допустим ['text','text''user''user'] И нужно получить уникальное значение. то new Set(['text','text''user''user']) вернет только [text user]
Например найти одинаковые элементы в 2 массивах за сложность O(n), а не O(m*n) при простой итерации через 2 массива
Когда нужно работать с уникальными значениями
Например нам нужно работать с алфавитом, хорошо использовать Set, а не обычный массив, т.к есть вероятность что случайно добавится одна и та же буква.
set.add({ className: 'button'});
set.add({ className: 'button'});
set.add({ className: 'button'});
Так мы создадим в коллекции, три визуально похожих объекта, но которые будут ссылаться на разные участки памяти?
ьне кажется, что set хорошо сипользовать для вывода информации на страницу с помощью шаблонизатора pug, в том случае, если нужно избежать повторяющихся значений
Какая тема стоит в VS Code ?
Так и не понял, как получать уведомления о новых видео по подписке на сайте. На ютюбе всё очевидно, на сайте чё-то беда :)
подскажи, как сделать подписку на твоем сайте на месяц, и будет доступ ко всем видео?
Все четко и понятно! Спасибо!
Спасибо за видео. Что это за ИДЕ у вас ? И что за программа работает под вызовом > node 1.js ?
FeranDAq по-моему, на видео он использует Sublime Text
Visual studio code
Это Visual Studio Code. Если я не ошибаюсь, то для запуска node script.js в консоли нужно установить npm и node.js.
Это Visual Studio Code. Для запуска кода я использую Node.js - самый распространенный способ запуска JS за пределами браузера.
👍
подскажи пожалуйста, а что это за IDE у тебя? Мне она понравилась
Это visual studio code. Мне больше phpstorm нравится, в плане настраиваемости и удобной кастомизации.
Очень интересно, спасибо
Отличное видео. Спасибо.
Классное видео,спасибо.
Хорошо бы действительно сделать пару приемов из реальной жизни. А то кроме классов у элементов нет мыслей.
Любая картотека на JS может быть выстроена на сетах, там уже ваша фантазия что именно хранить.
Вот пример: Пользователь может выбрать элементы на странице. Выбранные элементы можно хранить в сете и быть уверенным что два одинаковых элемента не будут выбраны.
функции сбора статистики по полученым даным, где нужно знать точное число уникальных значений иначе статистика будет неверной. делал недавно подобное , исключительно на сетах.
Странное добавление в язык понятия _множество_ без основных функций работы с множествами!
А проверка на уникальность - не стоит выеденного яйца...
большое спасибо
Доступно и понятно, спасибо