如果我开始将我的脚本标签定义为ECMA,会发生什么?它会按照不同的标准执行吗?
实际上有人使用ECMA脚本而非纯粹的JavaScript吗?
如果我开始将我的脚本标签定义为ECMA,会发生什么?它会按照不同的标准执行吗?
实际上有人使用ECMA脚本而非纯粹的JavaScript吗?
ECMAScript是一种标准。JavaScript是该标准的实现(更确切地说是第3版标准的实现)。
其他的ECMAScript实现包括ActionScript和JScript。
此外,请注意JavaScript不止有一种。每个JavaScript引擎都可以实现自己的语言版本,只要符合ECMAScript的要求即可。这意味着浏览器(JS引擎)可以有额外的功能,但必须具备基本的ECMAScript功能。
现在来回答你的问题,根据RFC 4329,如果媒体类型设置为application/ecmascript
而不是application/javascript
,则必须遵守更严格的标准。
本文档定义了等效的处理要求,适用于文本/ JavaScript、文本/ ecmascript 和应用/ JavaScript 这些类型。与本文档中定义的其他媒体类型相比,使用和支持媒体类型应用/ ecmascript 的情况要少得多。为了更好地促进互操作性处理,利用这一点,本文档为此类型定义了更严格的处理规则。
application/*
而不是text/*
,以符合RFC建议。如果您将其替换为text/*
,则仍适用相同的论点。 - Alin PurcaruECMAScript是一种编程语言标准,类似于Lisp。JavaScript是该标准的一种实现,同时还包括了非ECMAScript功能,如DOM。ActionScript(用于Flash)是另一种。就像使用“Lisp”编写代码需要使用像Common Lisp或Scheme这样的方言一样,直接编写ECMAScript可能不仅没有意义,而且在方言中也无法使用(虽然我认为ActionScript 3和最近的JavaScript应用了整个ECMAScript标准)。