Шесть вопросов с объяснениями
Таймер — API среды. V8 выполняет JavaScript callback, а браузер организует его последующий вызов.
Узлы AST описывают конструкции программы, а связи — их вложенность. В V8 генератор байткода использует это дерево для создания инструкций.
Оптимизированный код может рассчитывать на определённые типы значений. Когда это предположение перестаёт подходить, деоптимизация позволяет восстановить состояние функции и продолжить её выполнение через интерпретатор.
У каждого вызова функции свои данные. Кадр стека сохраняет состояние вызова и сведения о том, куда продолжить выполнение после return.
Присваивание null меняет binding b. Значение a не изменилось; объект остаётся достижимым через a.
GC видит достижимость, а не смысл закрытой сцены. Владелец lifecycle должен разорвать ненужные долгоживущие связи.
Текст и навигация доступны без JavaScript. Для симуляций и сохранения прогресса необходимо включить JavaScript.