摘要:關(guān)于的入門(mén)了解新增模板字符串為提供了簡(jiǎn)單的字符串插值功能箭頭函數(shù)操作符左邊為輸入的參數(shù),而右邊則是進(jìn)行的操作以及返回的值。將對(duì)象納入規(guī)范,提供了原生的對(duì)象。增加了和命令,用來(lái)聲明變量。
關(guān)于ES6的入門(mén)了解
新增模板字符串(為JavaScript提供了簡(jiǎn)單的字符串插值功能)、箭頭函數(shù)(操作符左邊為輸入的參數(shù),而右邊則是進(jìn)行的操作以及返回的值Inputs=>outputs。)、for-of(用來(lái)遍歷數(shù)據(jù)—例如數(shù)組中的值。)arguments對(duì)象可被不定參數(shù)和默認(rèn)參數(shù)完美代替。ES6將promise對(duì)象納入規(guī)范,提供了原生的Promise對(duì)象。增加了let和const命令,用來(lái)聲明變量。增加了塊級(jí)作用域。let命令實(shí)際上就增加了塊級(jí)作用域。ES6規(guī)定,var命令和function命令聲明的全局變量,屬于全局對(duì)象的屬性;let命令、const命令、class命令聲明的全局變量,不屬于全局對(duì)象的屬性。。還有就是引入module模塊的概念
對(duì)Promise的理解
依照 Promise/A+ 的定義,Promise 有四種狀態(tài):
pending: 初始狀態(tài), 非 fulfilled 或 rejected.
fulfilled: 成功的操作.
rejected: 失敗的操作.
settled: Promise已被fulfilled或rejected,且不是pending
另外, fulfilled 與 rejected 一起合稱 settled
Promise 對(duì)象用來(lái)進(jìn)行延遲(deferred) 和異步(asynchronous ) 計(jì)算
Promise 的構(gòu)造函數(shù)
構(gòu)造一個(gè) Promise,最基本的用法如下:
var promise = new Promise(function(resolve, reject) { if (...) { // succeed resolve(result); } else { // fails reject(Error(errMessage)); } });
Promise 實(shí)例擁有 then 方法(具有 then 方法的對(duì)象,通常被稱為thenable)。它的使用方法如下:
promise.then(onFulfilled, onRejected)
接收兩個(gè)函數(shù)作為參數(shù),一個(gè)在 fulfilled 的時(shí)候被調(diào)用,一個(gè)在rejected的時(shí)候被調(diào)用,接收參數(shù)就是 future,onFulfilled 對(duì)應(yīng) resolve, onRejected 對(duì)應(yīng) reject
什么是 Promise ?
Promise 就是一個(gè)對(duì)象,用來(lái)表示并傳遞異步操作的最終結(jié)果
Promise 最主要的交互方式:將回調(diào)函數(shù)傳入 then 方法來(lái)獲得最終結(jié)果或出錯(cuò)原因
Promise 代碼書(shū)寫(xiě)上的表現(xiàn):以“鏈?zhǔn)秸{(diào)用”代替回調(diào)函數(shù)層層嵌套(回調(diào)地獄)
ECMAScript6的新特性
塊級(jí)作用區(qū)域 let a = 1;
可定義常量 const PI = 3.141592654;
變量解構(gòu)賦值 var [a, b, c] = [1, 2, 3];
字符串的擴(kuò)展(模板字符串) var sum = ${a + b};
數(shù)組的擴(kuò)展(轉(zhuǎn)換數(shù)組類型) Array.from($("li"));
函數(shù)的擴(kuò)展(擴(kuò)展運(yùn)算符) [1, 2].push(...[3, 4, 5]);
對(duì)象的擴(kuò)展(同值相等算法) Object.is(NaN, NaN);
新增數(shù)據(jù)類型(Symbol) let uid = Symbol("uid");
新增數(shù)據(jù)結(jié)構(gòu)(Map) let set = new Set([1, 2, 2, 3]);
for...of循環(huán) for(let val of arr){};
Promise對(duì)象 var promise = new Promise(func);
Generator函數(shù) function* foo(x){yield x; return x*x;}
引入Class(類) class Foo {}
引入模塊體系 export default func;
引入async函數(shù)[ES7]
async function asyncPrint(value, ms) { await timeout(ms); console.log(value) }
Object.is() 與原來(lái)的比較操作符 ===、== 的區(qū)別?
== 相等運(yùn)算符,比較時(shí)會(huì)自動(dòng)進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換
=== 嚴(yán)格相等運(yùn)算符,比較時(shí)不進(jìn)行隱式類型轉(zhuǎn)換
Object.is 同值相等算法,在 === 基礎(chǔ)上對(duì) 0 和 NaN 特別處理
+0 === -0 //true NaN === NaN // false Object.is(+0, -0) // false Object.is(NaN, NaN) // true
什么是 Babel ?
Babel 是一個(gè) JS 編譯器,自帶一組 ES6 語(yǔ)法轉(zhuǎn)化器,用于轉(zhuǎn)化 JS 代碼。
這些轉(zhuǎn)化器讓開(kāi)發(fā)者提前使用最新的 JS語(yǔ)法(ES6/ES7),而不用等瀏覽器全部兼容。
Babel 默認(rèn)只轉(zhuǎn)換新的 JS 句法(syntax),而不轉(zhuǎn)換新的API。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/89408.html
摘要:特意對(duì)前端學(xué)習(xí)資源做一個(gè)匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 特意對(duì)前端學(xué)習(xí)資源做一個(gè)匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 本以為自己收藏的站點(diǎn)多,可以很快搞定,沒(méi)想到一入?yún)R總深似海。還有很多不足&遺漏的地方,歡迎補(bǔ)充。有錯(cuò)誤的地方,還請(qǐng)斧正... 托管: welcome to git,歡迎交流,感謝star 有好友反應(yīng)和斧正,會(huì)及時(shí)更新,平時(shí)業(yè)務(wù)工作時(shí)也會(huì)不定期更...
摘要:提供了完整的環(huán)境,并且支持自定義域名指向,動(dòng)態(tài)計(jì)算資源調(diào)整,可以完成各種應(yīng)用的開(kāi)發(fā)編譯與部署。 react 新特性 react16 Context 算法相關(guān) 圖解排序算法(二)之希爾排序 微信小程序 微信小程序組件化的解決方案移動(dòng)端尺寸基本知識(shí) 瀏覽器 前端必讀:瀏覽器內(nèi)部工作原理瀏覽器緩存原理解讀瀏覽器加載css和js及dom解析之間的關(guān)系瀏覽器緩存 CSS學(xué)習(xí) 移動(dòng)web開(kāi)發(fā)布局入...
摘要:前言正則表達(dá)式時(shí)處理字符串中常用的手法,本文以簡(jiǎn)單的方式,快速展示了中正則相關(guān)的基礎(chǔ)知識(shí)點(diǎn)。文末還提供了幾個(gè)簡(jiǎn)單的正則相關(guān)面試題。接下來(lái)是正則部分,注意后面的并不匹配,也就是比如,實(shí)際匹配的值是和,在和后面加上,就完成了預(yù)期。 前言:正則表達(dá)式時(shí)處理字符串中常用的手法,本文以簡(jiǎn)單的方式,快速展示了JavaScript中正則相關(guān)的基礎(chǔ)知識(shí)點(diǎn)。文末還提供了幾個(gè)簡(jiǎn)單的正則相關(guān)面試題。個(gè)人總結(jié)...
摘要:前端培訓(xùn)初級(jí)階段語(yǔ)法變量值類型運(yùn)算符語(yǔ)句前端培訓(xùn)初級(jí)階段內(nèi)置對(duì)象函數(shù)基礎(chǔ)內(nèi)容知識(shí)我們會(huì)用到。模塊定義加載模塊繼承中的繼承依賴于原型鏈繼承。 前端最基礎(chǔ)的就是 HTML+CSS+Javascript。掌握了這三門(mén)技術(shù)就算入門(mén),但也僅僅是入門(mén),現(xiàn)在前端開(kāi)發(fā)的定義已經(jīng)遠(yuǎn)遠(yuǎn)不止這些。前端小課堂(HTML/CSS/JS),本著提升技術(shù)水平,打牢基礎(chǔ)知識(shí)的中心思想,我們開(kāi)課啦(每周四)。 該文為前...
摘要:前言月份開(kāi)始出沒(méi)社區(qū),現(xiàn)在差不多月了,按照工作的說(shuō)法,就是差不多過(guò)了三個(gè)月的試用期,準(zhǔn)備轉(zhuǎn)正了一般來(lái)說(shuō),差不多到了轉(zhuǎn)正的時(shí)候,會(huì)進(jìn)行總結(jié)或者分享會(huì)議那么今天我就把看過(guò)的一些學(xué)習(xí)資源主要是博客,博文推薦分享給大家。 1.前言 6月份開(kāi)始出沒(méi)社區(qū),現(xiàn)在差不多9月了,按照工作的說(shuō)法,就是差不多過(guò)了三個(gè)月的試用期,準(zhǔn)備轉(zhuǎn)正了!一般來(lái)說(shuō),差不多到了轉(zhuǎn)正的時(shí)候,會(huì)進(jìn)行總結(jié)或者分享會(huì)議!那么今天我就...
閱讀 3115·2021-10-13 09:40
閱讀 3971·2021-09-22 15:51
閱讀 1512·2021-09-22 15:48
閱讀 1081·2021-09-06 15:00
閱讀 1806·2019-08-30 15:43
閱讀 2372·2019-08-29 18:35
閱讀 1684·2019-08-29 16:18
閱讀 3630·2019-08-29 12:49