JavaScript · Трек

Синтаксис

Проходите разделы по порядку. Каждая тема начинается с короткого объяснения перед упражнениями.

3 уровня 29 тем 330 упражнений

Порядок обучения

Разделы и темы

Открывайте темы сверху вниз внутри каждого уровня или переходите сразу к нужной части.

Начальный уровень

13 тем · 170 упражнений

Условные операторы Практические упражнения по условным операторам в JavaScript: сравнение чисел, проверка диапазонов, работа со строками, паролями, процентами и базовой логикой if, else if, else. 15 задач Условные операторы 2 Дополнительная практика по условным операторам в JavaScript: проверки строк, длины текста, символов, срезов через методы строк, логических операторов &&/|| и простых сценариев ввода. 11 задач Методы строк Изучи встроенные методы строк в JavaScript — поиск, нарезка, замена, разбиение и форматирование текста с помощью шаблонных строк. 10 задач Цикл while Упражнения по циклу while в JavaScript: повторение действий, счётчики, суммы чисел, ввод до нужного условия, break, перебор строк и базовая обработка символов. 14 задач Цикл for и массивы Практика цикла for в JavaScript на массивах: перебор элементов, фильтрация значений, подсчёты, поиск минимума и максимума, работа со строками, датами и вложенными данными. 15 задач Функции Базовые упражнения по функциям в JavaScript: объявление функций, параметры, return, проверки чисел и строк, работа с массивами и простыми вычислениями. 10 задач Функции уровень 2 Расширенная практика функций в JavaScript: обработка строк и чисел, логические проверки, массивы, фильтрация, подсчёты, поиск значений и написание переиспользуемых функций. 20 задач Функции: уровень 3 Упражнения по функциям JavaScript уровня 3: функции с режимами работы, флагами, несколькими условиями, обработкой строк, массивов и чисел для развития алгоритмического мышления. 15 задач Основы ООП Практические задания по основам ООП в JavaScript: создание классов и объектов, свойства, методы, constructor, изменение состояния объекта и простое моделирование сущностей. 11 задач ООП: наследование и переопределение методов Задачи по ООП в JavaScript на наследование, super(), constructor, переопределение методов, toString(), собственные методы классов и работу с объектами. 9 задач ООП, объекты, алгоритмическое мышление Упражнения по JavaScript на ООП, объекты и алгоритмическое мышление: классы для анализа данных, подсчёт слов и символов, работа с оценками, паролями, статистикой и преобразованием объектов. 15 задач Set, объекты, обработка ошибок Практика JavaScript с Set, объектами и обработкой ошибок: уникальные значения, общие символы, try/catch, безопасная обработка данных, группировка слов и анализ строк. 15 задач Работа с файлами: чтение и запись Практические упражнения по работе с файлами в JavaScript на Node.js: чтение текста, запись строк, добавление данных, подсчёт строк и слов, обработка содержимого файла и создание простых отчётов через модуль fs. 10 задач

Промежуточный

9 тем · 90 упражнений

Методы массивов: map, filter, reduce Функциональные методы массивов для преобразования, фильтрации и агрегации данных без явных циклов. 10 задач Деструктуризация и spread Извлекайте значения из массивов и объектов в одной строке. Охватывает деструктурирующее присваивание, оператор spread и rest-параметры. 10 задач Стрелочные функции и this Освой синтаксис стрелочных функций и пойми как `this` ведёт себя по-разному в стрелочных и обычных функциях — ключевое различие для классов, колбэков и обработчиков событий. 10 задач Замыкания Функции, которые помнят свою внешнюю область видимости. Охватывает механику замыканий и практические паттерны — счётчики и фабрики. 10 задач Промисы и async/await Обработка асинхронных операций с помощью цепочек Promise, async-функций и await. 10 задач Регулярные выражения Поиск по шаблону с помощью RegExp. Охватывает test, match, replace и именованные группы захвата. 10 задач JSON и Date Сериализация и десериализация данных с помощью JSON и работа с объектом Date. 10 задач Кастомные ошибки и обработка ошибок Встроенные типы ошибок, пользовательские подклассы Error и структурированные паттерны обработки ошибок. 10 задач Map Изучи структуру данных Map в JavaScript — коллекцию ключ-значение, принимающую любой тип в качестве ключа, сохраняющую порядок вставки и обеспечивающую эффективные операции добавления, получения и удаления. 10 задач

Продвинутый уровень

7 тем · 70 упражнений

Итераторы и генераторы Создавайте собственные итерируемые объекты через `Symbol.iterator`, пишите функции-генераторы с `function*` и `yield`, используйте `yield*` для делегирования. 10 задач Модули Работайте с ES-модулями: именованные и default-экспорты/импорты, реэкспорт, динамический `import()` и избегание циклических зависимостей. 10 задач Цикл событий Как JavaScript обрабатывает конкурентность с одним потоком и одной очередью. Охватывает стек вызовов, очередь задач, очередь микрозадач и порядок `setTimeout` vs `Promise.resolve`. 10 задач Паттерны проектирования Повторно используемые решения для распространённых структурных и поведенческих проблем. Охватывает Observer, Strategy, Factory и Decorator на чистом JavaScript. 10 задач Замыкания и область видимости Лексическая область, замыкания, приватное состояние и паттерны замыканий 10 задач Обработка ошибок Пользовательские ошибки, try/catch/finally, async ошибки и защитные паттерны 10 задач Тестирование в JavaScript Написание и структурирование модульных тестов с помощью Jest/Vitest. Охватывает describe/it/expect, моки, асинхронные тесты и поддельные таймеры. 10 задач