JavaScript编写的语言是什么?

时间:2011-08-10 03:58:42

标签: javascript

如果它是一种脚本语言,顾名思义它必须用较低级别的语言编写吗?就像用PHP编写PHP一样,用什么语言编写JavaScript?

7 个答案:

答案 0 :(得分:92)

Javascript只是一种标准,更正式地称为ECMAScript。它可以用任何语言实现,就像任何标准一样。

Chrome的Javascript引擎 V8 是用C ++编写的。

从项目页面:

  

V8是用C ++编写的,用于Google Chrome中的开源浏览器。

     

V8按照ECMA-262,第5版和第5版的规定实施ECMAScript   在Windows(XP或更高版本),Mac OS X(10.5或更高版本)和Linux上运行   使用IA-32,x64或ARM处理器的系统。

Firefox的Javascript引擎SpiderMonkey(现在是TraceMonkey)也是用C ++编写的。正如下面的maerics所说,Rhino是用Java编写的。

答案 1 :(得分:23)

到目前为止所有答案都是正确的,但由于尚未提及,JavaScript can be written in JavaScript

答案 2 :(得分:10)

大多数Javascript解释器都是用C / C ++(V8,Nitro等)编写的,但是兼容的解释器可以用任何语言编写(Rhino→Java,Interpreter→Javascript等等。)。

答案 3 :(得分:5)

客户端webbrowsers javascript解释器所用的语言是:)

答案 4 :(得分:5)

Javascript是ECMAScript标准的一个实现,但是没有像你在PHP中看到的那样单一的规范解释器。

出于性能原因,大多数主要实现(独立或作为Web浏览器的一部分)往往主要用C或C ++编写,但并非总是如此。由Mozilla维护的引擎Rhino是用Java编写的。

答案 5 :(得分:3)

Javascript的大多数实现显示的行为显然是由使用指针和byref参数传递引起的,这通常指向使用C或C ++

这显然是值得注意的,例如当你在中间数组的帮助下拆分循环中的多维数组时。如果你不熟悉指针和参数传递参数(你需要每次都做var hlp = new Array(),或者它会覆盖你已存储在其他地方的先前值),这些行为往往表现得非常“奇怪”。 p>

我对如何在Java中实现javascript感到好奇,因为我想在这种情况下这种行为会有很大的不同?

答案 6 :(得分:1)

SELECT p.Product FROM TableName WHERE Region BETWEEN 10 AND 20 AND ISO=True 是现代和奇特事物的基本语言。大多数现代高级语言都是低级语言的子集C++。您今天看到的所有现代语言都是C++的子集。甚至C++都是Java的子集。