了解Javascript版本

时间:2012-11-19 16:49:55

标签: javascript browser

我想问一些关于javascript的问题:

1.每个浏览器自己实现javascript吗?或者他们是一个常见的SDK \ API还是其他什么?

2.如果每个浏览器单独实现,javascript引擎是否受限于浏览器版本?

我的意思是,对于相同的浏览器版本,我可以使用2种不同的引擎吗?

3.是否有任何标准所有javascript引擎必须遵循?此标准是否定义了内存

分配? (让我们说,我如何分配一个javascript字符串?)

最后,

每个浏览器的实施名称是什么?例如我了解FirFox使用

实施称为“犀牛”,我是对的吗?

非常感谢! 迈克尔

3 个答案:

答案 0 :(得分:1)

每个浏览器都实现了自己的JS版本。因此,为什么有些浏览器胜过其他浏览器。他们对JS应该做什么以及应该如何做的规范基于ECMAScript规范。我见过的唯一具有多个引擎(或引擎版本)的情况是使用IE的web开发工具栏,您可以在其中“回滚”您的IE版本以测试先前版本的反应。我发现JS引擎在进行浏览器版本测试时非常忠实。

Wiki在不同的引擎上写得很好。 http://en.wikipedia.org/wiki/JavaScript_engine#Mozilla

答案 1 :(得分:1)

JavaScript是通过大多数浏览器都遵守的ECMAScript规范标准化的。

但是,并非所有功能都在所有浏览器和浏览器版本中实现,并且某些功能有自己的浏览器特定怪癖。

您可以在此处找到有关ECMAScript的更多详细信息以及浏览器实现的版本: -

http://en.wikipedia.org/wiki/ECMAScript

您不会在同一个浏览器中(通常)提供两种不同的JavaScript引擎。

答案 2 :(得分:1)

  1. 是的,他们自己实现了JavaScript。
  2. 是的,它与浏览器版本绑定。不,您不能为同一浏览器版本提供2种不同的引擎。但是,您可以使用不同的浏览器版本。
  3. 是的,它被称为EcmaScript。大多数实现都非常好。
  4. FireFox不使用Rhino。 Mozilla开发了它,但FireFox中的实现是不同的。所有浏览器都实现单线程JavaScript,而Rhino不是单线程的。