V8 (в Google Chrome) содержит интерпретатор JS и JIT (Just-in-time) компилятор.Код JS преобразуется в специфичный для V8 байт-код.Байт-код первоначально интерпретируется интерпретатором, который называется «зажигание».Когда функция становится «горячей» (она часто запускается), JIT-компилятор TurboFan выдает оптимизированный машинный код из байт-кода.
Другие современные движки JS используют аналогичные стратегии.Таким образом, JS может интерпретироваться или компилироваться в машинный код (с использованием JIT-компилятора), подобно тому, как работают JVM, да.