ECMAScript 6 入門

1.MCMAScript和JavaScript的關(guān)系

一個(gè)常見的問題是,ECMAScript和JavaScript到底是什么關(guān)系?

要講清楚這個(gè)問題,需要回顧歷史。1996年11月,JavaScript的創(chuàng)造者Netscape公司,決定將JavaScript提交給國際標(biāo)準(zhǔn)化組織ECMA,希望這種語言能夠成為國際標(biāo)準(zhǔn)。次年,ECMA發(fā)布262號(hào)標(biāo)準(zhǔn)文件(ECMA-262)的第一版,規(guī)定了瀏覽器腳本語言的標(biāo)準(zhǔn),并將這種語言稱為ECMAScript,這個(gè)版本就是1.0版。

該標(biāo)準(zhǔn)從一開始就是針對(duì)JavaScript語言制定的,但是之所以不叫JavaScript,有兩個(gè)原因。一是商標(biāo),Java是Sun公司的商標(biāo),根據(jù)授權(quán)協(xié)議,只有Netscape公司可以合法地使用JavaScript這個(gè)名字,且JavaScript本身也已經(jīng)被Netscape公司注冊(cè)為商標(biāo)。二是想體現(xiàn)這門語言的制定者是ECMA,不是Netscape,這樣有利于保證這門語言的開放性和中立性。

因此,ECMAScript和JavaScript的關(guān)系是,前者是后者的規(guī)格,后者是前者的一種實(shí)現(xiàn)(另外的ECMAScript方言還有Jscript和ActionScript)。日常場合,這兩個(gè)詞是可以互換的。

2.ES6與ECMAScript 2015的關(guān)系

媒體里面經(jīng)??梢钥吹健盓CMAScript 2015“這個(gè)詞,它與ES6是什么關(guān)系呢?

2011年,ECMAScript 5.1版發(fā)布后,就開始制定6.0版了。因此,”ES6”這個(gè)詞的原意,就是指JavaScript語言的下一個(gè)版本。

但是,因?yàn)檫@個(gè)版本引入的語法功能太多,而且制定過程當(dāng)中,還有很多組織和個(gè)人不斷提交新功能。事情很快就變得清楚了,不可能在一個(gè)版本里面包括所有將要引入的功能。常規(guī)的做法是先發(fā)布6.0版,過一段時(shí)間再發(fā)6.1版,然后是6.2版、6.3版等等。

但是,標(biāo)準(zhǔn)的制定者不想這樣做。他們想讓標(biāo)準(zhǔn)的升級(jí)成為常規(guī)流程:任何人在任何時(shí)候,都可以向標(biāo)準(zhǔn)委員會(huì)提交新語法的提案,然后標(biāo)準(zhǔn)委員會(huì)每個(gè)月開一次會(huì),評(píng)估這些提案是否可以接受,需要哪些改進(jìn)。如果經(jīng)過多次會(huì)議以后,一個(gè)提案足夠成熟了,就可以正式進(jìn)入標(biāo)準(zhǔn)了。這就是說,標(biāo)準(zhǔn)的版本升級(jí)成為了一個(gè)不斷滾動(dòng)的流程,每個(gè)月都會(huì)有變動(dòng)。

標(biāo)準(zhǔn)委員會(huì)最終決定,標(biāo)準(zhǔn)在每年的6月份正式發(fā)布一次,作為當(dāng)年的正式版本。接下來的時(shí)間,就在這個(gè)版本的基礎(chǔ)上做改動(dòng),直到下一年的6月份,草案就自然變成了新一年的版本。這樣一來,就不需要以前的版本號(hào)了,只要用年份標(biāo)記就可以了。

ES6的第一個(gè)版本,就這樣在2015年6月發(fā)布了,正式名稱就是《ECMAScript 2015標(biāo)準(zhǔn)》(簡稱ES2015)。2016年6月,小幅修訂的《ECMAScript 2016標(biāo)準(zhǔn)》(簡稱ES2016)如期發(fā)布,這個(gè)版本可以看作是ES6.1版,因?yàn)閮烧叩牟町惙浅P。ㄖ恍略隽藬?shù)組實(shí)例的includes方法和指數(shù)運(yùn)算符),基本上是同一個(gè)標(biāo)準(zhǔn)。根據(jù)計(jì)劃,2017年6月將發(fā)布ES2017標(biāo)準(zhǔn)。

因此,ES6既是一個(gè)歷史名詞,也是一個(gè)泛指,含義是5.1版以后的JavaScript的下一代標(biāo)準(zhǔn),涵蓋了ES2015、ES2016、ES2017等等,而ES2015則是正式名稱,特指該年發(fā)布的正式版本的語言標(biāo)準(zhǔn)。本書中提到“ES6”的地方,一般是指ES2015標(biāo)準(zhǔn),但有時(shí)也是泛指“下一代JavaScript語言”。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.JavaScript的歷史 誕生JavaScript誕生于1995年。起初它的主要目的是處理以前由服務(wù)器端負(fù)責(zé)...
    賈里閱讀 559評(píng)論 0 1
  • 本文為阮一峰大神的《ECMAScript 6 入門》的個(gè)人版提純! babel babel負(fù)責(zé)將JS高級(jí)語法轉(zhuǎn)義,...
    Devildi已被占用閱讀 2,125評(píng)論 0 4
  • 使用Babel第一步,需要寫 .babelrc 配置文件?;靖袷饺缦? presets 字段設(shè)定轉(zhuǎn)碼規(guī)則,官方提...
    北千山閱讀 397評(píng)論 0 2
  • 形容湖南人愛打牌有這么一個(gè)比喻,稱之為“經(jīng)濟(jì)半小時(shí)”,意思是講在湖南的各大病館酒店都有棋牌室,供客人消遣,在等待就...
    陳飛鵬閱讀 1,107評(píng)論 0 0
  • 有時(shí)候會(huì)很羨慕那些將工作和生活打理的很好的人。 會(huì)羨慕那些談戀愛很久很久的,再牽手之時(shí),還有最初的心動(dòng)。是多年后,...
    海北sunshine閱讀 253評(píng)論 0 0

友情鏈接更多精彩內(nèi)容