【发布时间】:2012-12-20 17:37:03
【问题描述】:
node.js 是一个基于 Google V8 JavaScript 引擎的开源服务器端 JavaScript 平台。几年来,它已迅速普及并变得越来越重要。
现在 node.js 只是一个平台。本质上,使用哪个 JavaScript 引擎只是一个实现细节,任何 JS 引擎都可以使用,甚至是与各种 JS 引擎一起工作的抽象。
Joyent 可能选择了 V8,因为它是开源的,有优惠的许可条款,而且通常是最快的 JS 引擎(但我相信它有时会被其他引擎超越)。
鉴于对许多可能被称为“开放标准”的事物(例如 JS 引擎、Web 浏览器、编程语言的编译器等)拥有多种不同但兼容的实现是一件好事;当然,拥有像 node.js 这样的服务器端平台的多个实现也很好
例如,几乎所有操作系统和硬件都可以运行 JavaScript 引擎,但 V8 仅适用于其中的几个。甚至事实证明,微软正在为 Windows Azure 推广 node.js,尽管它依赖于主要竞争对手的工作,即使他们拥有自己的 JS 引擎,可以与 V8 竞争速度。
如果有任何此类端口已经开始,我将非常有兴趣关注他们的进展,以监控 node.js 是否可能成为开放标准。
• 我意识到 node 不像 JS 和浏览器那样标准化,而且它的发展非常迅速,但这从未阻止任何人挠痒痒。 • 如果有多个端口,我不是在征求您认为更好或更受欢迎的意见,这不是民意调查问题。 • 我也不是购买 node.js 实现,我感兴趣的是 node.js 或类似的东西是否会被普遍采用作为一个平台,或者它是否会留在一家公司手中。支持>
【问题讨论】:
-
我想这是可能的,但目前还不可行,因为 V8 会碾压所有其他引擎。也许这在未来会改变,谁知道......
-
我所知道的最接近的是Luvit,它是基于 Lua 的 Node.js 基础架构实现。
-
@hippietrail - 那么为什么接受的答案不是简单的“是或否”?另外,使用这种逻辑,什么会使一个答案有效而一个无效?每个没有给出“否”答案的团队是否应该将其标记为正确?您本质上是在要求进行民意调查 - 人们投票“是”或“否” - 这就是为什么它是模棱两可和无效的问题。
-
@Fraser 和任何其他相关方,我已寻求有关 Meta 的指导:Ought objective yes/no questions about the existence of a project etc be construed as “poll questions”?
标签: javascript node.js platform serverside-javascript javascript-engine