JavaScript 与 ECMAScript 的关系

一、JavaScript 与 ECMAScript 的关系

  • JavaScript 是 ECMAScript 语法的一种最为流行的具体实现(除此之外比如 Flash 里的 ActionScript 也是一种实现);
  • JavaScript 有浏览器、Node.js 等多种宿主环境,是一种日常的通称,各种宿主所扩充的 API 有差异,比如浏览器有 document,而 Node.js 有 process,这些在统一语法规范 ECMAScript 中没有规定;
  • ECMAScript 是 ECMA 国际组织(www.ecma-international.org)负责的各种标准(/publications/standards/Standard)之一。

推荐参考教程:https://es6.ruanyifeng.com/

二、浏览器支持

目前主流的浏览器都对ECMAScript支持

  • Opera 11.60 +
  • Internet Explorer 9+(IE9不支持严格模式,IE10支持)
  • Firefox 4 +
  • Safari 5.1+(不支持Function.prototype.bind)
  • Chrome 13+

详细支持情况可以看看 ECMAScript 5 compatibility table

新特性

ECMAScript5 Object的新属性方法

ECMAScript5 Array新增方法

ECMAScript5的其它新特性

querySelector和querySelectorAll

 

三、ECMAScript 的所有官方文件

(一)262 号规范(/publications/standards/Ecma-262

定义:即狭义的 ECMAScript 规范。

版本:目前为止的版本(/publications/standards/Ecma-262-arch)有:

  • 第 1 版(1997 年)
  • 第 2 版(1998 年)
  • 第 3 版(1999 年),IE 5.5 开始支持,前端功能丰富性和地位开始飞速进展,此后 IE 逐渐从规范探索性先驱走向跟进拖后腿的地位
  • 第 4 版,过于激进而流产
  • 第 5 版(2009 年),IE 8 及以前虽有部分实现但应理解为规范的探索性来历,而非规范的实现,IE 9 正式支持(仅除了严格模式),IE 10 开始全面支持
  • 第 5.1 版(2011 年),第 5 版经调整措辞后,由更高等级、审核发布周期更长的组织确定下来的版本(换言之,通常单独提及 ECMAScript 5 和 ECMAScript 5.1 时,是不作区别的,指的都是 5.1)
  • 第 6+n 版(2015+n 年)

(二)402 号规范(/publications/standards/Ecma-402

定义:规定了虽然不属于 ECMAScript 本身、但各种实现应当统一做法的“地区差异化的接口”。

版本:目前为止的版本(/publications/standards/Ecma-402-arch)有:

  • 第1版(2012年)
  • 第2版(2015年)
  • 第3版(2016年)

(三)404 号规范(/publications/standards/Ecma-404

定义:规定了 ECMAScript 需要用到、产生自 ECMAScript 却成为独立通用标准的“JSON”。

版本:只有一版,并且已经冻结。

(四)414 号规范(/publications/standards/Ecma-414

定义:规定了和 ECMAScript 相关的标准有哪些(即上述三条)。

版本:只有一版。

 

更多:

 新版本chrome浏览器(80版本以后)带来的跨域请求cookie丢失问题  

JavaScript Image对象 整理  

JavaScript Window对象 整理 

posted @ 2020-08-29 12:18  天马3798  阅读(987)  评论(0编辑  收藏  举报