2016-04-28 2 views
0

Является ли двигатель V8, который используется в Chrome и Node.js, компилирует весь код на машинный язык один раз или он компилирует следующий контекст, который будет выполняться каждый раз для каждого контекста, который добавляется в стек вызовов?Создает ли javascript двигатель V8 весь javascript для машинного языка?

+0

@trincot Этот вопрос является неудовлетворительным для программистов - он будет быстро проголосовать и закрыт там, см. [Почему мы не поддерживаем клиентов для \ [вашей любимой компании \]] (http: // meta .stackoverflow.com/д/255745/839601). Рекомендуемое чтение: ** [Что происходит с Programmers.SE? Руководство по переполнению стека] (http://meta.programmers.stackexchange.com/q/7182/31260) ** – gnat

+0

См. Http://programmers.stackexchange.com/questions/291230/how-does-chrome-v8 -work-and-why-was-javascript-not-jit-compiled-in-the-first-pl – trincot

+1

@gnat Это совсем не похоже на вопрос технической поддержки. Он задает специфику поведения общедоступной библиотеки, которое может иметь отношение к задачам программирования. Это не большой вопрос, но это не поддержка клиентов. – xaxxon

ответ

1

V8, скорее всего, скомпилирует часть вашего кода для машинного языка и, вероятно, не скомпилирует его все на машинный язык.

Точное представление для любой части кода зависит от многих факторов, включая постоянно меняющееся поведение оптимизации в библиотеке. Ничто из этого не гарантируется и не должно рассматриваться как таковое, даже если оно ведет себя определенным образом прямо сейчас.