Урок 1.1. Типы данных в JavaScript
Язык JavaScript - Качество кода
Вы написали код. Он не работает. Вы добавляете console.log('тут'). Потом ещё один. Потом console.log('сюда доходит?'). Через час вы окружены лесоповалом из сообщений в консоли, а баг всё ещё здесь. Я знаю эту боль. Мы все через это проходили. Но есть путь джедая. Инструменты отладки в браузере - это не магия для избранных. Это мощный арсенал, который превращает поиск ошибок из гадания на кофейной гуще в детективное расследование с лупой, отпечатками пальцев и замедленной съёмкой. Вы знаете console...
Язык JavaScript - Типы данных 2
Вы всё ещё используете обычные объекты для хранения пар "ключ-значение"? И массивы для проверки уникальности? Я вас понимаю. Это работает. Но работает плохо. Объекты путают строковые ключи, наследуют свойства от прототипа и не помнят порядок. А поиск в массиве - это всегда O(n), что медленно. Встречайте Map и Set - две структуры данных, которые были созданы, чтобы решить проблемы старых добрых объектов и массивов. Map - это коллекция ключ-значение, где ключом может быть что угодно: число, объект, функция, даже NaN...