Подтвердить что ты не робот

Скомпилируйте JavaScript для собственного кода с помощью V8

Возможно ли, с помощью Google V8 Engine, скомпилировать JavaScript в собственный код, сохранить его как двоичный файл и выполнить его всякий раз, когда я захочу с помощью моего программного обеспечения на любой машине?

4b9b3361

Ответ 1

Вы можете использовать функцию моментального снимка V8, чтобы предварительно скомпилировать код. Это все равно означает, что вы должны иметь полную версию V8 для загрузки моментального снимка (т.е. Вы не получаете автономный собственный код, он должен запускаться внутри виртуальной машины V8), поэтому все, что вы сохраняете, - это время компиляции, Кроме того, качество кода моментального снимка не обязательно так хорошо, как JIT-код, потому что JIT-код может использовать, например, SSE2/SSE3, если он доступен, какие моментальные снимки не могут принять.

Ответ 2

Насколько я знаю, V8 ​​является чисто компилятором just-in-time и не имеет ahead-of-time.

Как обсуждалось в статьях, которые я связал, JITs обеспечивают лучшую, более гибкую оптимизацию.

Ответ 3

Вместо этого может быть возможно использовать компилятор .NET JavaScript/JScript для создания .NET exe, а затем преобразовать .NET exe в собственный .exe, используя Моно компилятор времени впереди.

Ответ 4

Вместо использования V8 вы можете скомпилировать JavaScript в Python с помощью Js2Py, а затем преобразовать исходный код Python в С++ с помощью ShedSkin компилятор. Я еще не тестировал этот подход, но это тем не менее интересная возможность.

Ответ 5

Еще одна идея:

Javascriptasm.jsasm2wasmwasm2cc compiler= .exe файл