JavaScript
JavaScript
Что это такое
JavaScript — язык программирования браузера и одновременно язык, на котором написана большая часть фронтенда. Он исполняется в самой странице, на сервере и в инструментах между ними. В основе своей язык невелик: значения, функции, объекты, замыкания. Однако мастерство состоит не в размере ядра, а в умении отличать это ядро от странностей, которые накопились за годы.
Почему это важно
Каждая интерактивная страница написана на JavaScript. Он решает, что произойдёт по клику, какие данные загрузятся и успеет ли интерфейс ответить, пока пользователь не сдался. Под каждым фреймворком, который вам встретится, лежит тот же язык: React, Vue и Angular — библиотеки, которые рассчитывают, что вы знаете, что такое замыкание, почему this здесь ведёт себя иначе и что произойдёт с промисом после отклонения. Пропустить язык и учить сразу фреймворк — верный способ получить самый распространённый тип фронтенд-разработчика: он бегло говорит на идиомах фреймворка, однако не способен отладить то, что тот делает.
Что в этом треке
- Синтаксис и семантика (02-frontend/06-javascript/01-syntax-and-semantics) — значения, область видимости, функции и те части языка, которые удивляют.
- DOM и события (02-frontend/06-javascript/02-the-dom-and-events) — чтение страницы, её изменение и реакция на действия пользователя.
- Асинхронный JavaScript (02-frontend/06-javascript/03-asynchronous-javascript) — колбэки, промисы и
async/await, а также то, зачем они нужны. - Модули и инструменты (02-frontend/06-javascript/04-modules-and-tooling) — как разбить код на файлы и доставить его в браузер.
Предварительные требования
- Язык гипертекстовой разметки (HTML) (02-frontend/03-html)
Что читать дальше
- TypeScript (02-frontend/19-typescript) — типизированное надмножество, на котором написан почти весь продакшн-код на JavaScript.
- Управление состоянием (02-frontend/23-state-management) — когда странице нужны данные, которыми пользуются в нескольких местах.
- Инструменты разработчика в браузере (02-frontend/27-browser-devtools) — консоль и отладчик — то место, где язык действительно осваивают.