Мы используем cookie для стабильной работы сервиса. Подробнее

Разработка на JavaScript

4.5
ФорматОнлайн
Длительность40 академ. часов
Объём13 занятий
УровеньСредний
По окончанииУдостоверение о прохождении
Всё для обучения

Как устроено обучение

Домашние задания
О курсе

Подробнее

Изучите увлекательные подходы к разработке интерактивных веб-приложений на JavaScript, включая DOM, асинхронность и фреймворки.
Требования

Что нужно для старта

  • Слушатели знакомы с HTML и CSS, желателен опыт программирования на каком-либо языке с С-подобным синтаксисом (C, C++, Java, C#).
Результат

Что вы получите

  • Создавать интерактивные веб-приложения с использованием JavaScript.
  • Манипулировать DOM и CSS с помощью JavaScript.
  • Обрабатывать события и создавать формы.
  • Работать с JSON и AJAX для асинхронных запросов.
  • Создавать и оптимизировать проекты с помощью Webpack.
Аудитория

Для кого этот курс

  • Разработчик
Содержание

Программа курса

13 занятий
ТемаЧто внутри
01Язык JavaScript

• Версии и реализации JavaScript;
• Области применения JavaScript (браузер, сервер, мобильная разработка);
• Типы данных: String, Number, Boolean (понятие truthy и falsy);
• Операторы, приоритет операторов;
• Объявление переменных: var, const, let;
• Циклы: while, for, for … in, for …of;
• Работа с числами и строками;
• Значения null и undefined: отличия и цели применения;
• Работа с консолью;
• Исключения в JavaScript.

02JSON, объекты и массивы

• Формат JSON, примеры;
• JSON.parse и stringify;
• Объекты, работа с классом Object;
• Создание объектов (с помощью литерала {}, оператор new, метод create);
• Прототипическое наследование, ссылка __proto__;
• Геттеры и сеттеры;
• Оператор in и hasOwnProperty, понятие перечислимых свойств;
• Метод toString(), вызов и переопределение метода;
• Метод valueOf(), вызов и переопределение метода;
• Создание массивов: литералы и new Array();
• Автоматическое изменение длины массива;
• Получение и установка длины массива length, усечение массива;
• Применение методов join() и concat();
• Использование метода sort, задание порядка сортировки массива;
• Использование методов slice и splice;
• Использование методов push, pop, shift, unshift: создание стека или очереди.

03Работа с датами и строками

• Применение конструктора new Date();
• Понятие компьютерного представления даты как времени с Epoch;
• Использование getTime() и setTime();
• Парсинг строкового представления дат;
• Варианты создания строк в JS: использование одинарных и двойных кавчек;
• Интерполяция строк (строка в апострофах);
• Экранирование специальных символов в строке;
• Конкатенация строк, перевод в верхний и нижний регистр;
• Поиск подстроки с помощью indexOf() и lastIndexOf();
• Выделение подстроки с помощью substring() и substr()
• Применение методов includes, endsWith, startsWith.

04Применение JavaScript в браузере: модель DOM

• Управление окном браузера, документом, событиями и оформлением (CSS-стилями);
• Объект window и его применение;
• Подключение кода JavaScript к HTML-странице;
• Порядок выполнения скриптов на странице;
• Кэширование скриптов, CDN-серверы, принудительная перезагрузка JavaScript;
• Работа с ссылками, подключение JavaScript к ссылкам;
• Событие onload и его использование;
• XSS-атаки на сайт;
• Работа с DOM: использование window, document, childNodes;
• Манипуляции документом с помощью DOM: создание, удаление, перемещение элементов;
• Использование getElementById(), getElementsByTagName(), getElementsByClassName() для поиска элементов на странице;
• Работа с методами и свойствами HTMLDocument и HTMLElement.

05Работа с событиями в браузере

• Понятие событийного программирования;
• Обработчики и слушатели событий;
• Подключение обработчиков c помощью addEventListener();
• Свойства и методы класса Event;
• Распространение событий вверх (bubbling) и вниз (capturing);
• Остановка распространения;
• События окна;
• События мыши и клавиатуры, специальные свойства событий;
• События формы.

06Работа с CSS и управление стилями

• Стандарт CSS, основные свойства CSS;
• Общие стили и стили отдельных элементов;
• Каскадирование стилей;
• CSS-селекторы;
• Изменение CSS с помощью JavaScript;
• Отступы: margin, padding, border;
• Управление видимостью элементов: visibility и display;
• Позиционирование элементов: absolute, fixed, relative, установка top и left;
• Единицы измерения px, pt и другие;
• Переполнение элемента и управление через свойство overflow;
• Управление слоями документа: свойство zIndex;
• Анимация, перемещение элементов;
• Работа с классами, установка className;
• Работа с прозрачностью и переходами (transition);
• Метод querySelectorAll().

07Работа с модулями в JavaScript, менеджер пакетов NPM, сборщик Webpack

• Причины использования модулей;
• Экспорт из модуля;
• Импорт из модуля;
• Реэкспорт;
• Работа с NPM, файл package.json;
• Папка node_modules, загрузка пакетов с помощью NPM;
• Глобальная и локальная установка пакетов;
• Применение webpack для сборки проекта;
• Загрузчики CSS и TypeScript;
• Конфигурация webpack.config.js;
• Создание бандла, сжатие;
• Плагины webpack;
• Применение старых систем модульности – CommonJS и AMD;
• Использование CommonsChunkPlugin, несколько точек входа;
• Горячая замена модулей HMR.

08Классы и наследование в JavaScript

• Прототипное наследование, ссылка __proto__;
• Прототип объекта;
• Использование instanceof;
• Ключевое слово class, создание классов;
• Ключевое слово super;
• Применение метода Object.assign();
• Применение метода Object.defineProperty();
• Геттеры и сеттеры;
• Spread-оператор для работы с объектами и массивами;
• Деструктурирование массива и объекта.

09Функциональное программирование в JavaScript

• Функции как переменные;
• Массив arguments;
• Класс Function, методы call() и apply();
• Метод bind(), установка this и части параметров с помощью bind;
• Замыкания в JavaScript;
• Инкапсуляция значений с помощью замыканий;
• Создание функции через конструктор Function: конструирование строки;
• Стрелочные функции, примеры их применения;
• Функциональная манипуляция массивом: find, findIndex, filter;
• Примеры использования map/filter/reduce для обработки данных в массиве.

10Иммутабельность, тестирование, паттерн MVC

• Понятие иммутабельности, ее преимущества;
• Мутабельные и иммутабельные методы изменения объектов и массивов;
• Понятие и преимущества Virtual DOM;
• Тестирование иммутабельных функций, применение Jest;
• Мемоизация, ее преимущества;
• Основные ошибки и рекомендации при использовании функционального программирования;
• Паттерн MVC, создание пользовательского интерфейса;
• Обзор основных библиотек для разработки интерфейса: Angular, React, Vue.

11Асинхронность в JavaScript. Промисы

• Понятие и необходимость асинхронности;
• Работа с setTimeout, setInterval, clearTimeout;
• Функции обратного вызова (коллбэки);
• Потеря this при работе с функцией обратного вызова. Варианты решения (использование bind, стрелочных функций и др.);
• Понятие промисов, возвращение Promise из асинхронной функции;
• Метод Promise.all(), его применение;
• Синтаксис async/await, варианты применения, ограничения;
• Обработка внештатных ситуаций: Promise reject, обработка исключений при асинхронных вызовах.

12Работа с сервером. Протокол HTTP. REST-сервисы

• Протокол HTTP;
• Заголовки и методы HTTP (GET, POST, PUT, DELETE, другие), передача данных;
• HTTP-серверы (обзор);
• Коды ответа HTTP-сервера;
• Использование форм для отправки данных;
• Передача данных на сервер с помощью AJAX;
• Архитектура REST: преимущества и особенности;
• Реализация CRUD (операций Create/Read/Update/Delete) при работе с REST;
• Применение фунции fetch() для получения и отправки данных;
• Документирование REST-сервисов с помощью Swagger;
• Понятие HATEOAS, применение

13Библиотека AXIOS. Протокол WebSocket

• Сравнение высокоуровневой библитеки Axios и применения низкоуровневого fetch();
• GET- и POST- запросы в Axios;
• Применение async/await c Axios;
• Обработка ошибок при использовании Axios;
• Отмена запроса с помощью Axios;
• Протокол WebSocket;
• Примеры использования WebSocket, сравнение с HTTP;
• HTML-анимация.

01Язык JavaScript

• Версии и реализации JavaScript;
• Области применения JavaScript (браузер, сервер, мобильная разработка);
• Типы данных: String, Number, Boolean (понятие truthy и falsy);
• Операторы, приоритет операторов;
• Объявление переменных: var, const, let;
• Циклы: while, for, for … in, for …of;
• Работа с числами и строками;
• Значения null и undefined: отличия и цели применения;
• Работа с консолью;
• Исключения в JavaScript.

02JSON, объекты и массивы

• Формат JSON, примеры;
• JSON.parse и stringify;
• Объекты, работа с классом Object;
• Создание объектов (с помощью литерала {}, оператор new, метод create);
• Прототипическое наследование, ссылка __proto__;
• Геттеры и сеттеры;
• Оператор in и hasOwnProperty, понятие перечислимых свойств;
• Метод toString(), вызов и переопределение метода;
• Метод valueOf(), вызов и переопределение метода;
• Создание массивов: литералы и new Array();
• Автоматическое изменение длины массива;
• Получение и установка длины массива length, усечение массива;
• Применение методов join() и concat();
• Использование метода sort, задание порядка сортировки массива;
• Использование методов slice и splice;
• Использование методов push, pop, shift, unshift: создание стека или очереди.

03Работа с датами и строками

• Применение конструктора new Date();
• Понятие компьютерного представления даты как времени с Epoch;
• Использование getTime() и setTime();
• Парсинг строкового представления дат;
• Варианты создания строк в JS: использование одинарных и двойных кавчек;
• Интерполяция строк (строка в апострофах);
• Экранирование специальных символов в строке;
• Конкатенация строк, перевод в верхний и нижний регистр;
• Поиск подстроки с помощью indexOf() и lastIndexOf();
• Выделение подстроки с помощью substring() и substr()
• Применение методов includes, endsWith, startsWith.

04Применение JavaScript в браузере: модель DOM

• Управление окном браузера, документом, событиями и оформлением (CSS-стилями);
• Объект window и его применение;
• Подключение кода JavaScript к HTML-странице;
• Порядок выполнения скриптов на странице;
• Кэширование скриптов, CDN-серверы, принудительная перезагрузка JavaScript;
• Работа с ссылками, подключение JavaScript к ссылкам;
• Событие onload и его использование;
• XSS-атаки на сайт;
• Работа с DOM: использование window, document, childNodes;
• Манипуляции документом с помощью DOM: создание, удаление, перемещение элементов;
• Использование getElementById(), getElementsByTagName(), getElementsByClassName() для поиска элементов на странице;
• Работа с методами и свойствами HTMLDocument и HTMLElement.

05Работа с событиями в браузере

• Понятие событийного программирования;
• Обработчики и слушатели событий;
• Подключение обработчиков c помощью addEventListener();
• Свойства и методы класса Event;
• Распространение событий вверх (bubbling) и вниз (capturing);
• Остановка распространения;
• События окна;
• События мыши и клавиатуры, специальные свойства событий;
• События формы.

06Работа с CSS и управление стилями

• Стандарт CSS, основные свойства CSS;
• Общие стили и стили отдельных элементов;
• Каскадирование стилей;
• CSS-селекторы;
• Изменение CSS с помощью JavaScript;
• Отступы: margin, padding, border;
• Управление видимостью элементов: visibility и display;
• Позиционирование элементов: absolute, fixed, relative, установка top и left;
• Единицы измерения px, pt и другие;
• Переполнение элемента и управление через свойство overflow;
• Управление слоями документа: свойство zIndex;
• Анимация, перемещение элементов;
• Работа с классами, установка className;
• Работа с прозрачностью и переходами (transition);
• Метод querySelectorAll().

07Работа с модулями в JavaScript, менеджер пакетов NPM, сборщик Webpack

• Причины использования модулей;
• Экспорт из модуля;
• Импорт из модуля;
• Реэкспорт;
• Работа с NPM, файл package.json;
• Папка node_modules, загрузка пакетов с помощью NPM;
• Глобальная и локальная установка пакетов;
• Применение webpack для сборки проекта;
• Загрузчики CSS и TypeScript;
• Конфигурация webpack.config.js;
• Создание бандла, сжатие;
• Плагины webpack;
• Применение старых систем модульности – CommonJS и AMD;
• Использование CommonsChunkPlugin, несколько точек входа;
• Горячая замена модулей HMR.

08Классы и наследование в JavaScript

• Прототипное наследование, ссылка __proto__;
• Прототип объекта;
• Использование instanceof;
• Ключевое слово class, создание классов;
• Ключевое слово super;
• Применение метода Object.assign();
• Применение метода Object.defineProperty();
• Геттеры и сеттеры;
• Spread-оператор для работы с объектами и массивами;
• Деструктурирование массива и объекта.

09Функциональное программирование в JavaScript

• Функции как переменные;
• Массив arguments;
• Класс Function, методы call() и apply();
• Метод bind(), установка this и части параметров с помощью bind;
• Замыкания в JavaScript;
• Инкапсуляция значений с помощью замыканий;
• Создание функции через конструктор Function: конструирование строки;
• Стрелочные функции, примеры их применения;
• Функциональная манипуляция массивом: find, findIndex, filter;
• Примеры использования map/filter/reduce для обработки данных в массиве.

10Иммутабельность, тестирование, паттерн MVC

• Понятие иммутабельности, ее преимущества;
• Мутабельные и иммутабельные методы изменения объектов и массивов;
• Понятие и преимущества Virtual DOM;
• Тестирование иммутабельных функций, применение Jest;
• Мемоизация, ее преимущества;
• Основные ошибки и рекомендации при использовании функционального программирования;
• Паттерн MVC, создание пользовательского интерфейса;
• Обзор основных библиотек для разработки интерфейса: Angular, React, Vue.

11Асинхронность в JavaScript. Промисы

• Понятие и необходимость асинхронности;
• Работа с setTimeout, setInterval, clearTimeout;
• Функции обратного вызова (коллбэки);
• Потеря this при работе с функцией обратного вызова. Варианты решения (использование bind, стрелочных функций и др.);
• Понятие промисов, возвращение Promise из асинхронной функции;
• Метод Promise.all(), его применение;
• Синтаксис async/await, варианты применения, ограничения;
• Обработка внештатных ситуаций: Promise reject, обработка исключений при асинхронных вызовах.

12Работа с сервером. Протокол HTTP. REST-сервисы

• Протокол HTTP;
• Заголовки и методы HTTP (GET, POST, PUT, DELETE, другие), передача данных;
• HTTP-серверы (обзор);
• Коды ответа HTTP-сервера;
• Использование форм для отправки данных;
• Передача данных на сервер с помощью AJAX;
• Архитектура REST: преимущества и особенности;
• Реализация CRUD (операций Create/Read/Update/Delete) при работе с REST;
• Применение фунции fetch() для получения и отправки данных;
• Документирование REST-сервисов с помощью Swagger;
• Понятие HATEOAS, применение

13Библиотека AXIOS. Протокол WebSocket

• Сравнение высокоуровневой библитеки Axios и применения низкоуровневого fetch();
• GET- и POST- запросы в Axios;
• Применение async/await c Axios;
• Обработка ошибок при использовании Axios;
• Отмена запроса с помощью Axios;
• Протокол WebSocket;
• Примеры использования WebSocket, сравнение с HTTP;
• HTML-анимация.

Документ после выпуска

Удостоверение о прохождении

Организатор

Автор курса

IBS Training CenterIBS Training Center
Оценка и обучение ИТ-специалистов по ключевым направлениям разработки программного обеспечения. Курсы от экспертов-практиков по языкам программирования, системному и бизнес-анализу, архитектуре ПО, ручному и автоматизированному тестированию ПО, Big Data и машинному обучению, управлению проектами и Agile. Действует скидка 10% на обучение физических лиц.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «Разработка на JavaScript» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Направления:JavaScript

Информация обновлена 14 сентября 2026 г.

Продолжить выбор

Похожие курсы

Vue.js 3, Vue Router и Pinia
Vue.js 3, Vue Router и Pinia

В этом курсе мы изучим Vue, Vue Router и Pinia, создавая два полноценных приложения. Мы сделаем приложение для отображения прогноза погоды и Saas сервис хранения веб закладок. Это…

Онлайн15 занятий
3 999 ₽
jQuery для начинающих
30 минут в день
jQuery для начинающих

В этом видео курсе вы изучите основы библиотеки jQuery. Продолжительность курса чуть больше чем 3 часа. В курсе для вас подготовлено 38 видео уроков. Обязательно изучите все допол…

Онлайн4 занятий
290 ₽
Разработка на Angular
−10%14 сентября
Разработка на Angular

Освойте промышленную разработку на Angular: создавайте динамические веб-приложения с нуля. Изучите TypeScript, компоненты, шаблоны, пайпы, сервисы, маршрутизацию и сложные формы.…

Онлайн13 занятийСредний
42 900 ₽−10%
38 610 ₽
Node js для Front End
4 месяца
Node js для Front End

Backend разработка на Node.js: Express.js, NestJS фреймворки. Работа с базами данных PostgreSQL, MongoDB. Создание REST API, аутентификация и авторизация. WebSockets для реального…

ОнлайнСредний
100 000 ₽от 5 555 ₽/мес на 18 мес.
NestJS — с нуля, современный backend на TypeScript и Node JS
NestJS — с нуля, современный backend на TypeScript и Node JS

NestJS - это быстро растущий Node.js фреймворк, который позволяет командам легко разрабатывать поддерживаемые, легко тестируемые и масштабируемые приложения благодаря TypeScript и…

Онлайн14 занятий
3 999 ₽
Начать без затрат

Бесплатные курсы

Разработка веб-приложений на Node.js
БесплатноКурс рассчитан на 5-6 недель обучения.
Разработка веб-приложений на Node.js

Node.js – современная и востребованная на рынке труда платформа для разработки веб-приложений. Этот курс проведет вас от изучения основ Node.js до создания первого приложения и по…

Онлайн5 занятий
Бесплатно