Javascript,还有几个问题

时间:2011-04-10 19:45:44

标签: javascript

这是对我今天没有找到明确答案的事情的一点看法。

  1. 似乎有不同版本的Javascript,但我没有看到任何书籍或网站说“这针对ECMAScript版本2”。似乎有一个ECMAScript 5,如果相信wiki页面,则不会在任何浏览器中使用。那么我需要了解版本吗?

  2. 服务器端Javascript。我已经看到了一些这方面的提及,我没有特别关注它,但在一两句话中,服务器端Javascript使用在哪里,为什么?

  3. 我假设不同的浏览器支持不同的Javascript子集(猜测),但话说再说一遍,我还没有看到,鉴于所有其他Web技术的状态,它似乎是合乎逻辑的。是的还是我离开了?

2 个答案:

答案 0 :(得分:5)

1:ECMAScript 3是目前所有浏览器都支持的.ES5是目前正在采用的新标准。

但这并不能阻止你在今天的浏览器中使用大多数ES5功能。事实证明,你可以通过向原型添加函数来模拟大多数函数(比如string.trim函数很容易实现)

更新:正如Reid在评论中指出的那样,有一个很好的表格,概述了可用的不同浏览器中的ES5兼容性here

2:Node.js目前似乎是最受欢迎的服务器端高级JavaScript引擎,但其中有很多。

还有一些其他服务器也在服务器上运行javascript。 MongoDB例如使用JSon来回传输结果,map / reduce函数必须用JavaScript编写,然后在服务器上运行。

3:不,他们都支持ES3标准。它们仅在API上有所不同(语言相同)。

这意味着,虽然Google Chrome支持本地存储,但它们通过DOM内的JavaScript对象提供对该功能的访问。在IE8中,这些对象根本不存在,无法调用。

另外:EcmaScript总是指JavaScript,他们只是无法命名标准JavaScript,因为JavaScript是Sun(拥有Java的公司)的商标。

答案 1 :(得分:0)

每个人都只提到ES5,因为ES4被淘汰了,ES1,2和3都在3年之内就出现了。 ES3于1999年问世,因此在ES5最终确定/支持之前,它是唯一存在于所有意图和目的的版本。