Раздел 01 / Под капотом JavaScriptКак работает
Как работает
Движок JavaScript
От строки кода до выполняемой программы.
Последовательно рассмотрим устройство движка на примерах и интерактивных схемах.
19 уроков~60–90 минут с практикойECMA-262 + V8
Начать раздел →Основные механизмы движка
Исходный код → AST → Байткод
Ignition ↔ JIT
Стек вызовов + Куча объектов
Пройдено уроков0 / 19
Прогресс хранится в этом браузере Содержание раздела
Уроки доступны отдельно и в последовательном порядке- 01ECMAScript · Engine · RuntimeЯзык, движок и среда исполнения✓
- 02Общая картаКак V8 выполняет JavaScript✓
- 03Исходный текст → токеныScanner: узнаём слова языка✓
- 04Синтаксическое деревоAST: структура вместо строки✓
- 05Startup и lazy parsingНе всё нужно компилировать сразу✓
- 06AST → инструкцииБайткод: инструкции для Ignition✓
- 07Исполнение байткодаКак работает интерпретатор✓
- 08Байткод → машинный кодJIT: зачем движку V8 несколько компиляторов✓
- 09Feedback → specialization → deoptОптимизация строится на предположениях✓
- 10Вызов → возвратCall Stack: кто выполняется сейчас✓
- 11Параметры и возвратКадр стека: что движок хранит для вызова✓
- 12Объекты и ссылкиMemory Heap: где хранятся объекты✓
- 13Объект и ссылка на негоИзменить объект или заменить ссылку?✓
- 14ДостижимостьGC ищет достижимые объекты✓
- 15Lifecycle сценыУтечка: объект всё ещё нужен по графу✓
- 16ПотокиПотоки JavaScript✓
- 17Инженерная практикаПроизводительность игры✓
- 18ПовторениеОбщая схема работы движка✓
- 19СамопроверкаПроверка понимания✓