首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有针对JavaScript的本机机器码编译器?

有没有针对JavaScript的本机机器码编译器?
EN

Stack Overflow用户
提问于 2009-07-13 07:42:08
回答 8查看 28.4K关注 0票数 52

有没有针对JavaScript的本机机器码编译器?我不是在说VM。如果它不存在,它能做到吗?

由于语言的动态性,我想知道它是否可以编译成二进制。

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-07-13 07:57:15

据我所知,目前还没有针对JavaScript的静态编译器。这在理论上当然是可能的;但是,JavaScript的静态编译需要一个非常重量级的运行时来支持它的所有特性(如动态类型和求值)。顺便提一下,当需要静态编译Python (另一种动态语言)时,PyPy开发人员最终创建了一种能够静态编译的语言,它是Python语言的一个非常有限的子集(称为RPython),没有Python的一些更动态的特性。

如果您这样问的目的是为了从JavaScript代码创建独立的可执行文件,我敢肯定肯定有一些包装器,它本质上会创建一个包含您的脚本和嵌入式JavaScript VM的可执行文件(遗憾的是,我不知道有没有)。

票数 34
EN

Stack Overflow用户

发布于 2009-07-13 07:48:23

这绝对是可行的,尽管目前我知道的唯一方法是分两步走……

使用类似于GNU's GCJ.的Mozilla Rhino JSC.

  • Compile将生成的Java类文件编译为可执行的

但是你为什么要这么做呢?你希望找到什么优势?

票数 29
EN

Stack Overflow用户

发布于 2015-02-08 20:56:06

谷歌V8引擎将JavaScript编译成本机代码。这个特性在我为node.js和io.js项目编写的EncloseJS编译器中使用。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1118138

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档