新聞中心
ES6的特性有哪些?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
ES6(ECMAScript2015)的出現(xiàn),無疑給前端開發(fā)人員帶來了新的驚喜,它包含了一些很棒的新特性,可以更加方便的實(shí)現(xiàn)很多復(fù)雜的操作,提高開發(fā)人員的效率。
以下是ES6排名前十的很好特性列表(排名不分先后):
1.Block-Scoped Constructs Let and Const(塊作用域構(gòu)造Let and Const)
2.Arrow Functions (箭頭函數(shù))in ES6
3.Default Parameters(默認(rèn)參數(shù)) in ES6
4.Template Literals (模板文本)in ES6
5.Multi-line Strings (多行字符串)in ES6
6.Destructuring Assignment (解構(gòu)賦值)in ES6
7.Enhanced Object Literals (增強(qiáng)的對象文本)in ES6
8.Promises in ES6
9.Classes(類) in ES6
10.Modules(模塊) in ES6
首先回顧一下JavaScript的歷史,不清楚歷史的人,很難理解JavaScript為什么會這樣發(fā)展。下面就是一個簡單的JavaScript發(fā)展時間軸:
1、1995:JavaScript誕生,它的初始名叫LiveScript。
2、1997:ECMAScript標(biāo)準(zhǔn)確立。
3、1999:ES3出現(xiàn),與此同時IE5風(fēng)靡一時。
4、2000–2005: XMLHttpRequest又名AJAX, 在Outlook Web Access (2000)、Oddpost (2002),Gmail (2004)和Google Maps (2005)大受重用。
5、2009: ES5出現(xiàn),(就是我們大多數(shù)人現(xiàn)在使用的)例如foreach,Object.keys,Object.create和JSON標(biāo)準(zhǔn)。
6、2015:ES6/ECMAScript2015出現(xiàn)。
歷史回顧就先到此,現(xiàn)讓我們進(jìn)入正題。
1.Block-Scoped Constructs Let and Const(塊作用域和構(gòu)造let和const)
在ES6代碼中,你可能已經(jīng)看到那熟悉的身影l(fā)et。在ES6里let并不是一個花俏的特性,它是更復(fù)雜的。Let是一種新的變量聲明方式,它允許你把變量作用域控制在塊級里面。我們用大括號定義代碼塊,在ES5中,塊級作用域起不了任何作用:
function calculateTotalAmount (vip) { var amount = 0; if (vip) { var amount = 1; } { // more crazy blocks! var amount = 100; { var amount = 1000; } } return amount; } console.log(calculateTotalAmount(true)); 結(jié)果將返回1000,這真是一個bug。在ES6中,我們用let限制塊級作用域。而var是限制函數(shù)作用域。 function calculateTotalAmount (vip) { var amount = 0; // probably should also be let, but you can mix var and let if (vip) { let amount = 1; // first amount is still 0 } { // more crazy blocks! let amount = 100; // first amount is still 0 { let amount = 1000; // first amount is still 0 } } return amount; } console.log(calculateTotalAmount(true));
分享標(biāo)題:ES6的特性有哪些-創(chuàng)新互聯(lián)
文章源于:http://ef60e0e.cn/article/pijsc.html