JavaScript 引擎是一个专门处理 JavaScript 脚本的虚拟机, 一般会附带在网页浏览器之中. 虚拟机在计算机科学中的体系结构里, 是指一种特殊的软件, 可以在计算机平台和终端用户之间创建一种环境, 而终端用户则是基于这个软件所创建的环境来操作软件.
一些 JavaScript 引擎:
V8, 用 C++ 编写, 开放源代码, 由 Google 丹麦开发, 是 Google Chrome 的一部分, 也用于 Node.JS.
JavaScriptCore, 开放源代码, 用于 webkit 型浏览器, 如 Safari ,2008 年实现了编译器和字节码解释器, 升级为了 SquirrelFish. 苹果内部代号为 "Nitro" 的 JavaScript 引擎也是基于 JavaScriptCore 引擎的.
Rhino, 由 Mozilla 基金会管理, 开放源代码, 完全以 Java 编写, 用于 htmlUnit
SpiderMonkey, 第一款 JavaScript 引擎, 早期用于 Netscape Navigator, 现时用于 Mozilla Firefox.SpiderMonkey 是 Mozilla 项目的一部分, 是一个用 C 语言实现的 JavaScript 脚本引擎.
Chakra (JScript 引擎), 用于 Internet Explorer.
Chakra (JavaScript 引擎), 用于 Microsoft Edge.
KJS,KDE 的 ECMAScript/JavaScript 引擎, 最初由哈里. 波顿开发, 用于 KDE 项目的 Konqueror 网页浏览器中.
JavaScript 引擎的作用:
基本工作是把开发人员写的 JavaScript 代码转换成高效, 优化的代码, 这样就可以通过浏览器进行解释甚至嵌入到应用中.
更准确地讲, 每个 JavaScript 引擎都实现了一个版本的 ECMAScript,JavaScript 是它的一个分支. 随着 ECMAScript 的不断发展, JavaScript 引擎也不断改进. 之所以有这么多不同的引擎, 是因为它们每个都被设计运行在不同的 Web 浏览器, headless 浏览器, 或者像 Node.JS 那样的运行时环境中.
来源: http://www.css88.com/qa/javascript/11830.html