es6知識點總結(一)es6
let,var,const數組
var:能重複聲明,有前置功能。 let:有塊級做用域,沒有前置功能,不能重複聲明。 const:有塊級做用域,用來聲明常量(恆量),不可改變,常量的名字必須大寫,不能重複聲明,常量在聲明的時候必須賦值,常量的值是引用數據類型。
模板字符串:函數
1.模板字符串能夠綁定變量; 2.模板字符串支持換行; 3.標籤模板字符串。
對象字面量:性能
1.字面量對象屬性可以簡寫(當你賦值的變量名和你的屬性名同樣的狀況下); 2.字面量對象方法能夠簡寫,省去function關鍵字; 3.對象的屬性能夠寫自動計算的屬性。
解構賦值:rest
1.解構賦值是指es6容許咱們按照必定的解構模式提取數組和對象裏的值賦給變量; 2.解構能夠避免在對象賦值時產生中間變量; 3.解構賦值能夠解構對象,解構陣列。
擴展運算符:code
1.展開數組: let arr = [1,2,3,4]; let a = [...arr]; console.log(a); 2.數組的拷貝: let a = [1,2,3]; let a1 = [...a]; a1.push(4); console.log(a); console.log(a1); 3.數組的合併: let a = [1,2,3]; let a1 = [4,5,6]; a = [...a,...a1]; console.d(a); 4.數組的調用: function fn(a,b,c,d){ console.log(a+b+c+d); } var p=[1,2,3,4,5,6]; let result=fn(10,...p);
箭頭函數:對象
//箭頭函數 => let a = () => { console.log("Hello word") } a(); //有參數 (name)=>{ console.log(name); }; //沒有參數 ()=>{ console.log("hi word") }; //能夠省略() let d = name=>{ console.log(name); } d('jiang'); //兩個參數 (name,age)=>{ console.log(name,age); }; //省略後的 let c (a,b)=>a+b; (a,b)=>{console.log(a+b); console.log(c);
擴展參數:作用域
//默認參數 let sayHellow = (name,age=30)=>{ let str = `${name} is ${age} years old` console.log(str); } sayHellow("songze",25);//控制檯打印songze is 25 years old。 //擴展參數 let sum = (a,b,c) => { console.log(a+b+c); }; let arr = [1,2,3]; sum(...arr);//控制檯打印6。 //剩餘函數 let he = (a,b,...rest)=>{ console.log(rest);//控制檯打印[3, 4, 5, 6, 7, 8, 9]。 console.log(a+b);//控制檯打印3. } he(1,2,3,4,5,6,7,8,9);
Math、Number、String 、Array、Object:字符串
1.Math: 01.trunc:用於去除一個數的小數部分,返回整數部分; 02.sign:用來判斷這個數是正數負數仍是0,若是是正數就打印1,負數打印-1,0打印0,-0打印-0; 03.cbrt 用來計算一個數的立方根。 2.Number: 01.isInter:判斷一個數是不是整數; 02.isNaN:裏面的數只有是NaN的時候是true,別的所有都是fales,用來判斷這個數是否是非數字。 3.String: 01.includes:判斷一個字符串裏面有沒有包含某個字符; 02.startsWith:判斷一個字符串以某個字符開頭; 03.endsWith:判斷一個字符串以某個字符結尾; 04.repeat 重複打印某個字符串。 4.Array: 01.Array.feom:複製一個數組; 02.Array.of:把多個數字放在一個數組裏,相似於 new Array; 03.fill:第一個參數是要把數組裏的值改爲什麼,達爾戈參數是從數組的哪一位開始,它無論後面有多少數都要改變。 5.Object: 01.Object.assign:淺拷貝一個數組; 02.Object.setPrototypeOf:設置原型。
Symbol:原型
1.Symbol永遠是惟一的,不可能和別的重複,能夠阻止對象的屬性被篡改; 2.Symbol前面不能使用new操做符。
Set WeakSet:
1.集合和數組的區別就是一個重複,有個不重複; 2.WeakSet只能方引用數據類型(Object,數組)。
Map WeakMap:
1.Map和Object的區別:鍵名能夠是任何數據類型; 2.初始化的時候必須一次性指定鍵名(key)和鍵值(value)。