其实,这是一个颇有意思的话题。若是要展开来讲的话,要从JavaScript的起源提及。浏览器
万维网的兴起大约是在20世纪90年代,当时用户看到的网页内容可不像如今这样丰富,当时因为技术受限,人们只能看到静态网页。网络
表单提交是网页提供的一项基本服务。在当时,因为带宽受限,网络流量成为很是珍贵的资源。在JavaScript出现以前,全部表单中的字段校验只有传递给服务端,才能作出校验,若是出错,要通过很长的链路才能知道,这显然是让用户没法忍受的。对象
直到 1995 年网景的一名员工 Brendan Eich 写了一门语言叫 LiveScript 才解决这个问题。后来由于当时 Java 很火,想蹭一波热点,更名为 JavaScript 语言,其实它们并无多大关系。ip
因为它真正的解决了问题,提升了用户体验,网景公司的Navigator浏览器很快得到了大量用户。微软看到后很眼红,照葫芦画瓢推出了自家的JScript,搭载于IE浏览器,因为和桌面系统捆绑在一块儿,其也获取了大量用户(事实上,它很快战胜了网景公司)。就这样,因为两家工做在语言层面标准不一,致使了不少浏览器的兼容性问题。资源
1997 年,网景公司已 JavaScript 1.1 为蓝本的建议提交给欧洲计算机制造协会(ECMA),该协会负责将 JavaScript 标准化为一种通用的、跨平台、供应商中立的脚本语言。文档
通过数个月的努力完成了 ECMA-262 —— 定义一种名为 ECMAScript(ek-ma-script)的新脚本语言标准。class
自此之后,各家浏览器厂商都开始致力于将 ECMAScript 做为各自 JavaScript 的实现标准。浏览器兼容性
虽然现在 JavaScript 和 ECMAScript 一般被人们用来表达相同的含义,可是 JavaScript 的含义比 ECMA-262 中规定的要多。完整的 JavaScript 实现应该由三部分组成:兼容性
也就是说 EMACScript 来源于 JavaScript,又反向做为 JavaScript 的标准。用户体验