Сделаем шаг назад и рассмотрим всю последовательность выполнения исходного кода JS.
1. После того как программа выходит из редактора разработчика, она сначала транспилируется Babel, затем упаковывается Webpack (и, возможно, пятью-шестью другими процессами построения), после чего в совершенно новой форме передается ядру JS.
2. Ядро JS разбирает код в форму AST.
3. Ядро преобразует AST в своего рода байт-код — двоичное промежуточное представление (IR, Intermediate Representation), которое дополнительно совершенствуется/преобразуется оптимизирующим компилятором JIT.
4. Наконец, виртуальная машина JS выполняет программу.