您好,登錄后才能下訂單哦!
ES6是一門語言嗎?可能很多人對此都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
ES6不是什么前端技術或語言,ES6全稱是ECMAScript 6,是正式發(fā)布的JavaScript語言的一種標準,該標準的目標是使得JavaScript語言可以用來編寫復雜的大型應用程序,成為企業(yè)級開發(fā)語言。是于2015年6月正式發(fā)布的JavaScript語言的標準,正式名為ECMAScript 2015(ES2015)。它的目標是使得JavaScript語言可以用來編寫復雜的大型應用程序,成為企業(yè)級開發(fā)語言
ECMAScript 發(fā)展歷史
2000年,ECMAScript 4.0開始醞釀。這個版本最后沒有通過,但是它的大部分內容被ECMAScript6繼承了。因此,ECMAScript6制定的起點其實是2000年。
2007年10月,ECMAScript 4.0草案發(fā)布,本來預計2008年8月發(fā)布正式版本。但是,各方對于是否通過這個標準,發(fā)生了嚴重分歧。以Yahoo、Microsoft、Google為首的大公司,反對JavaScript的大幅升級,主張小幅改動;以JavaScript創(chuàng)造者Brendan Eich為首的Mozilla公司,則堅持當前的草案。
2008年7月,由于對于下一個版本應該包括哪些功能,各方分歧太大,爭論過于激烈,ECMA開會決定,中止ECMAScript 4.0的開發(fā),將其中涉及現(xiàn)有功能改善的一小部分,發(fā)布為ECMAScript 3.1,而將其他激進的設想擴大范圍,放入以后的版本,由于會議的氣氛,該版本的項目代號起名為Harmony(和諧)。會后不久,ECMAScript 3.1就改名為ECMAScript 5。
2009年12月,ECMAScript 5.0正式發(fā)布。Harmony項目則一分為二,一些較為可行的設想定名為 JavaScript.next繼續(xù)開發(fā),后來演變成ECMAScript 6;一些不是很成熟的設想,則被視為JavaScript.next.next,在更遠的將來再考慮推出。
2011年,ECMAScript 5.1發(fā)布后開始6.0版的制定。
2013年3月,ECMAScript 6草案凍結,不再添加新功能。新的功能設想將被放到ECMAScript 7。
2013年12月,ECMAScript 6草案發(fā)布。然后是12個月的討論期,聽取各方反饋。由于這個版本引入的語法功能太多,而且制定過程當中,還有很多組織和個人不斷提交新功能。標準委員會最終決定,標準在每年的6月份正式發(fā)布一次,作為當年的正式版本。接下來的時間,就在這個版本的基礎上做改動,直到下一年的6月份,草案就自然變成了新一年的版本。
2015年6月,ECMAScript 6(ES6)正式通過,成為國際標準,正式名稱是“ECMAScript 2015”(簡稱ES2015)。
2016年6月,小幅修訂的“ECMAScript 2016”(簡稱ES2016或ES7)標準發(fā)布,相當于ES6.1版,因為兩者的差異非常?。ㄖ恍略隽藬到M實例的includes方法和指數運算符),基本上是同一個標準
ES6 兼容性
不同瀏覽器的不同版本對ES6的支持度不同,而Babel是一個廣泛使用的ES6轉碼器,可以將ES6代碼轉為ES5代碼,從而在現(xiàn)有環(huán)境執(zhí)行,例如:
上面的原始代碼用了箭頭函數,Babel 將其轉為普通函數,就能在不支持箭頭函數的JavaScript環(huán)境執(zhí)行了[8]。
另外,使用Google公司的Traceur轉碼器,也可以將ES6代碼轉為ES5代碼,需要提前引入其js庫:
第一個是加載Traceur的庫文件,第二個和第三個是將這個庫文件用于瀏覽器環(huán)境。然后就可以加載ES6的用戶腳本了,如:
注意,自定義的script標簽的type屬性的值是module,而不是text/javascript。這是Traceur編譯器識別ES6代碼的標志,編譯器會自動將所有type=module的代碼編譯為ES5,然后再交給瀏覽器執(zhí)行。
看完上述內容,你們對ECMAScript 6有進一步的了解嗎?如果還想了解更多相關內容,歡迎關注億速云行業(yè)資訊頻道,感謝各位的閱讀。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。