ES6標準入門略讀筆記

編輯於2018年1月6日

一、let命令

1、let聲明的變量只在其所在代碼塊內有效;

2、let聲明的變量在聲明前使用會報錯ReferenceError;

3、暫時性死區;

4、let不允許在相同的作用域內重複聲明同一個變量。

二、塊級作用域

1、let外層代碼塊不受內層代碼塊的影響;

2、使用do表達式使塊級作用域中的值能夠返回。

三、const

1、const聲明一個只讀常量;

四、ES6中全局變量將逐步與頂層對象的屬性隔離

五、變量的解構賦值

1、解構不成功,變量的值就等於undefined;

2、解構賦值允許指定默認值;

3、解構也可用於對象;

4、字符串的解構賦值:const[a,b,c,d,e]="hello";

5、數值和布爾值也可使用解構賦值;

6、函數的參數也可以使用解構賦值,函數參數的解構也可以使用默認值;

7、建議在模式中不要放置圓括號;

8、用途:

a、變換變量的值;

b、從函數返回多個值;

c、函數參數的定義;

d、提取JSON數據;

e、函數參數的默認值;

f、遍歷Map解構。

四、字符串的擴展

1、字符的Unicode表示法:ES6中只要將碼點放入大括號,就能正確解讀該字符;

2、'abc'.at(0);//"a"        '?'.at(0);//"?"

     而ES5中'abc'.charAt(0);//"a"          '?'.charAt(0);//"\uD842"

3、常見方法

a、includes()、startsWith()、endsWith()

b、repeat()

c、padStart()、padEnd()//ES2017引入了字符串補全長度功能,'x'.padStart(4,'ab');//'abax'

4、模板字符串。

七、函數的拓展

1、函數的默認值;

2、應用:

function throwIfMissing(){
    throw new Error('Missing parameter');
}
function foo(mustBeProvided = throwIfMissing()){
    return mustBeProvided;
}
foo;//Error:Missing parameter

3、ES6引入了reset參數(形式爲“...變量名”);

 

4、name屬性:ES6的name屬性會返回實際的函數名;

5、箭頭函數;

6、函數綁定運算符是並排的雙冒號(::),雙冒號左邊是一個對象,右邊是一個函數;

7、尾調用優化。

八、數組的拓展

1、擴展運算符(spread)是三個點(...),他如同reset參數的逆運算;

2、Arrayfrom():將兩類對象轉爲真正的數組:

a、類似數組的對象

b、可遍歷對象

3、Arrayof()方法用於將一組值轉換爲數組;

4、copyWithin();

5、find()和findIndex();

6、fill()方法使用給定值填充一個數組;

7、entries()、keys()、values();

8、includes()。

十二、Proxy

函數Proxy接受兩個參數,第一個參數是所要代理的目標對象,即如果沒有Proxy介入,操作原來要訪問的就是這個對象;第二個參數是一個配置對象,對於每一個被代理的操作,需要提供一個對應的處理函數,該函數將攔截對應的操作。

十四、Promise對象

1、兩個特點:

a、對象的狀態不受外界影響,三種狀態:Pending(進行中)、Fulfilled(已成功)、Rejected(已失敗);

b、一旦狀態改變就不會再變

2、Promise.prototype.then()

     Promise.prototype.catch();

3、Promise.all()

     Promise.race();

4、Promise.resolve()

     Promise.reject();

5、done()

     finally()。

十五、Iterator和for...of循環

1、集中遍歷:

a、for;

b、forEach;

c、for...in;

d、for...of。

十九、class的基本語法:ES6中的class可以看作只是一個語法糖。

二十一、修飾器

1、修飾器本質就是編譯時執行的函數;

2、修飾器只能用於類和類的方法。

二十二、Module的語法

1、ES6模塊不是對象,而是通過export命令顯式指定輸出的代碼,再通過import命令輸入;

2、ES6的模塊自動採用嚴格模式,不管有沒有在模塊頭部加上"use strict"。

二十四、編程風格

1、ESLint的使用(語法規則和代碼風格的檢查工具)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章