основы · JavaScript

JavaScript с нуля

Напишешь первые функции для расчёта доставки, обработки строк и списков. Освоишь условия, циклы и объекты на небольших задачах.

Для старта: Опыт программирования не нужен

  • JavaScript
  • 5 модулей
  • 25 задач
  • 5 задач бесплатно

После регистрации откроется программа этого пути.

результаты практики

что освоишь на практике

Автор программы:
  • Обрабатывать строки шаблонными литералами, slice и padStart
  • Строить условия без truthy-ловушек и с явными границами сравнения
  • Проходить массивы циклом с накопителем и находить элементы по условию
подробнее о пути и навыках

что получится

25 задач на JavaScript, разбитых на пять паков: типы значений, условия и ветвления, массивы и циклы, форма объектов, основы функций. Нормализуешь хэндл из формы регистрации, скроешь середину номера карты доставки, посчитаешь тариф курьера за каждый начатый километр и переведёшь индекс качества воздуха в статус датчика. Последняя задача пака — тренажёр слепой печати с точностью в процентах и порогом 90. Код пишешь и запускаешь прямо в браузере, ничего не настраивая.

Для кого

Для того, кто раньше не писал код или только начал JavaScript и хочет закрепить синтаксис на конкретных, а не абстрактных примерах. Уровень входа easy: задачи держат за руку, но не разжёвывают синтаксис лекциями — ты сразу пишешь код и смотришь, что не так. AI-ассистент подсказывает, если завис, но не решает вместо тебя.

  • Опыт программирования не нужен
  • Достаточно уметь пользоваться браузером и читать условия задач на русском

что ещё отработаешь

  • Копировать объекты через spread, не изменяя исходные данные
  • Считать деньги в копейках через Math.floor и остаток от деления
  • Писать функции с параметрами по умолчанию и несколькими return
  • Отличать Number("") от нуля и другие ловушки приведения типов
программа

программа пути

Начинай с первого модуля: новые темы идут от простых к сложным. Каждая задача — отдельная практика с проверкой решения.

25 задач · 5 модулей
1.1
Хэндл как набрали
Нормализуйте хэндл из формы регистрации мессенджера: пробелы по краям и случайный Caps Lock не должны плодить дубли
1.2
Продолжить просмотр
Соберите подпись карточки «Продолжить просмотр» по жёсткому шаблону — шаблонные литералы в деле
1.3
Трек-номер в смс
Скройте середину трек-номера в смс пункта выдачи: slice с обоих концов строки
1.4
Часы забега
Соберите табло времени пробежки «5:07»: padStart дополняет секунды ведущим нулём
1.5
Цена билета
Превратите копейки в ценник афиши «549,00 ₽»: Math.floor, остаток от деления и padStart в одной строке
2.1
Датчик воздуха
Переведите индекс качества воздуха в статус индикатора: лесенка if с ранними return и честными границами на 50 и 100
2.2
Фильтр чата стрима
Решите, пройдёт ли сообщение в чат стрима: явная проверка пустоты, лимит длины и бан служебных команд — три условия, один boolean
2.3
Умный звонок
Превратите два флага распознавания лиц в действие умного звонка: порядок правил решает, кому откроется дверь, а кто попадёт на видео
2.4
Сверка штрихкода
Сверьте код со сканера с базой склада: строка против числа, явный Number() вместо коварного == — и ведущие нули не страшны
2.5
Статус заказа еды
Соберите фразу для карточки доставки еды: нормализация регистра, цепочка правил по порядку и ветка по умолчанию для незнакомых этапов
3.1
Трекер привычек
Посчитайте выполненные привычки дня циклом со счётчиком: строгое сравнение с «done», регистру и пробелам поблажек нет
3.2
Шагомер
Сложите метры всех прогулок за день накопителем — и узнайте, почему накопитель, начатый со строки, склеивает числа вместо сложения
3.3
Самый длинный трек
Найдите индекс самого длинного трека классическим for: при равных длительностях побеждает первый из них
3.4
Пуш-центр
Отберите в новый массив заголовки пушей, влезающие на экран часов: граница включительно, порядок цел, вход неприкосновенен
3.5
Чек кофейни
Соберите строки электронного чека «Капучино — 390,00 ₽» из массива позиций: цикл по объектам, целые копейки, Math.floor и padStart
4.1
Термостат
Достаньте настройку комнаты из профиля термостата: оператор in, дефолт «auto» — и ни одной записи в чужой объект
4.2
Реакции на пост
Сверните массив эмодзи в объект-счётчик: накопление через acc[key], ключи — в порядке первого появления
4.3
Прочитано
Пометьте уведомление прочитанным, не трогая стор: спред-копия {...obj} и разница между «изменил объект» и «вернул новый»
4.4
Анкета доставки
Найдите незаполненные поля анкеты перед оформлением заказа: отсутствующий ключ и пустая строка — две разные «пустоты» с одним смыслом
4.5
Облако фотографий
Сгруппируйте плоскую выгрузку фотостудии по альбомам: объект массивов, порядок первого появления и ни одной мутации входа
5.1
Доставка за начатый км
Посчитайте тариф курьерской доставки за каждый начатый километр — и познакомьтесь с параметром по умолчанию: без второго аргумента действует базовый тариф
5.2
Журнал звонков
Соберите подпись длительности звонка: до часа — «3:05», после — «1:02:05». Две ветки формата и несколько return в одной функции
5.3
Панель лифта
Превратите строку с сенсорной панели лифта в номер этажа или null — и обезвредьте ловушку Number("") === 0, которая делает из пустого ввода нулевой этаж
5.4
Итоги корзины
Соберите сводку корзины гипермаркета — количество, сумма и средняя позиция в целых копейках; пустая корзина не должна делить на ноль
5.5
Тренажёр слепой печати
Финал курса: оцените заезд на тренажёре печати по эталону — точность целым процентом, порог 90 и честный boolean в отчёте
доступ к полной программе Платные модули этого пути входят в Premium. Условия подписки можно посмотреть на странице тарифов. от 490 ₽ / мес посмотреть тарифы первые 5 задач — бесплатно, без карты
первый шаг в этом пути

начни с задачи «Хэндл как набрали»

После регистрации откроется путь «JavaScript с нуля». Выбери модуль «Типы значений»: редактор и проверка доступны на странице задачи.

5 задач бесплатно

начать бесплатно

После регистрации откроется программа этого пути.

другие пути на этом языке