ECMAScript的數字版本號和年份版本號是什麼關係?

時間 2021-06-02 12:19:04

1樓:Trotyl Yu

ECMAScript 的規範版本號自始至終都是 1、2、3、4、5、6、7、8、9 從來沒有變過,去規範上看一眼就知道了:

當前版本

歷史版本

至於 2015、2016 什麼的,是語言的版本,可以去看看規範中的 Scope 宣告:

Edition 1:This Standard defines the ECMAScript scripting language.

Edition 2:This Standard defines the ECMAScript scripting language.

Edition 3:This Standard defines the ECMAScript scripting language.

Edition 4:undefined

Edition 5:This Standard defines the ECMAScript scripting language.

Edition 5.1: This Standard defines the ECMAScript scripting language.

Edition 6:This Standard defines the ECMAScript 2015 general purpose programming language.

Edition 7:This Standard defines the ECMAScript 2016 general purpose programming language.

Edition 8:This Standard defines the ECMAScript 2017 general-purpose programming language.

說的簡單一點就是:

第六版之前只有規範版本號,沒有語言版本號;第六版開始既有規範版本號,也有語言版本號。

第六版之前只有規範版本號,沒有語言版本號;第六版開始既有規範版本號,也有語言版本號。

第六版之前只有規範版本號,沒有語言版本號;第六版開始既有規範版本號,也有語言版本號。

乙個更易理解的比方:

你出版了一本書,名字叫做《高考複習寶典》,每年發一版。然後從 2015 年開始,你決定更改書本標題使其包含年份資訊,方便讀者理解。於是有了:

《高考複習寶典》(第一版)

《高考複習寶典》(第二版)

《高考複習寶典》(第三版)

(資金鏈斷裂未出版)

《高考複習寶典》(第五版)

《高考複習寶典 2015》(第六版)

《高考複習寶典 2016》(第七版)

《高考複習寶典 2017》(第八版)

《高考複習寶典 2018》(第九版)

因為標題中已經包含了年份,所以讀者不再關心出版的版次,直接通過標題稱呼。但原有的版次編號事實上並沒有發生任何改變。

2樓:Lcng

簡單來說,ECMAScript現在沒有數字版本號,只有年份版本號。

詳細情況,得從第乙個版本的ECMAScript說起。

1,ECMAScript,第乙個版本,就叫ECMAScript,沒有簡稱,不是ECMAScript 1,也不是ECMAScript 1997。

2,ECMAScript 2nd Edition,第二個版本,沒有簡稱,不叫ECMAScript 2,也不叫ECMAScript 1998。

3,ECMAScript 3rd Edition,第三個版本,沒有簡稱,不叫ECMAScript 3,也不叫ECMAScript 1999。

4,ECMAScript 5th Edition,第五個版本,沒有簡稱,不叫ECMAScript 5,也不叫ECMAScript 2009。

5,ECMAScript 2015,第六個版本,簡稱ES2015。

6,ECMAScript 2016,第七個版本,簡稱ES2016。

7,ECMAScript 2017,第八個版本,簡稱ES2017。

8,ECMAScript 2018,第九個版本,簡稱ES2018。

上面列舉了每乙個版本的ECMAScript的全稱及簡稱(如果有的話),但你或許會有以下疑惑:

1,為什麼沒有第四個版本;

2,為什麼我會在其他地方看到ECMAScript 6和ES6這樣的名稱/簡稱。

第乙個問題的答案是,ECMAScript放棄了第四個版本,因為它改動太大,太激進了。。

第二個問題的答案是,起初ECMAScript 2015確實叫ECMAScript 6(因為它是第六個版本),並且其簡稱也是ES6(有沒有發現從這乙個版本開始ECMAScript是乙個商標了)。但後來ECMAScript 6這個名字及其簡稱ES6被棄用了,改為ECMAScript 2015和ES2015了。

當然,ECMAScript 2015之後再沒有ECMAScript 7(ES7)、ECMAScript 8(ES8)和ECMAScript 9(ES9)這樣的名字。但如果看到它們(非官方的用法),它們則分別指的是ECMAScript 2016(ES2016)、ECMAScript 2017(ES2017)和ECMAScript 2018(ES2018)。

此外,儘管ECMAScript 2015(曾用名ECMAScript 6)之前的各個版本的ECMAScript的官方名字不是ECMAScript 5(ES5)、ECMAScript 3(ES3)、ECMAScript 2(ES2)和ECMAScript 1(ES1),但我們仍然能看到這樣的稱呼,此時它們分別指的是ECMAScript 5th Edition、ECMAScript 3rd Edition、ECMAScript 2nd Edition、ECMAScript(第乙個版本)。

最後,ECMAScript會保持每年更新乙個版本,在這個版本發布之前,會被叫做ES.Next。

ECMAScript 6 的 Arrow Function 能不能在引數中使用解構?

拉姆達 要想嘗試部分ES6的新特性,用node.js 0.12 的版本,啟動時帶上 harmony引數。或者iojs都行啊,暫時不推薦用chrome或者ff,目前伺服器端支援的不錯,瀏覽器還需要時間 張秋怡 1.按照ES6 的 spec 是可以的,原因同 Belleve 的回答 2.是 Firefo...

的數字排列中能否找到 e 的數字排列?

syh 提問者應該是覺得既然是無限,那麼肯定是包羅永珍的,所以花時間找,肯定可以找到所有的可能性 甚至如果1代表出生,2代表死亡,3代表上學,475839397代表tinder match到我老婆,8878838代表我的名字,也許我努力找就能找到我一生的故事。然後 代表我爸,努力找還能找到他一生的故...

有爭議的數字找規律題,數字4 7 11 18 29 47 (?),請問括號內應填幾?

ass assin 正確答案是114514!不難看出f n 46458659 n 2 180 1401746 n 5 700891 n 3 6 2002565 n 4 72 100129 n 5 30 57217 n 6 360 114430,當n 7時,等式成立。哇,真是有趣,數學真神奇! 填任何...