es6新常用語法總結(jié)

1.Object[key]

這一語法主要是為了創(chuàng)建對象時,能夠用其他的變量作為屬性值。

var str="name";
var obj={
    [str]: 'jc',
    num: 1
};

2.箭頭函數(shù)

箭頭函數(shù)其實就是其他語言中已有的lamda表達(dá)式,但它是可以在函數(shù)定義的時候就綁定其this,可以用于返回一個已經(jīng)綁定this的函數(shù)。

var student={
    name: 'jc',
    createPrint: function(){
        return ()=>console.log(this.name);
    }
};
var blue=student.createPrint();
blue();   //jc

3.Array.prototype.find/findIndex方法

可以按條件搜索的方式來查找數(shù)組中第一個滿足條件的元素。

var array=[2,3,4,5];
console.log(array.find(a=>a>=3));   //3

4.展開運(yùn)算符

  • 將數(shù)組或可迭代對象拆分為單個的參數(shù):
//es5
var yuan=[3,4,5];
console.log(Math.min.apply(Math,yuan));
//es6
console.log(Math.min(...yuan));
  • 將可迭代對象轉(zhuǎn)化為數(shù)組:
    var array=[...document.querySelectorAll('div')];

5.字符串模板語法

  • 優(yōu)雅地在字符串中插入變量
var red={x:1,y:2};
console.log(`I am ${red.x+red.y}`);
  • 書寫多行文本
console.log(`this is a 
    theme`);

6.函數(shù)默認(rèn)參數(shù)

可以給函數(shù)設(shè)置默認(rèn)參數(shù),包括回調(diào)函數(shù)參數(shù),可以以優(yōu)雅的方式傳入回調(diào)函數(shù)。

//es5
function curry1(callback){
    if(typeof callback === 'function'){
        callback();
    }
}
//es6
function curry2(callback=function(){}){
    callback();
}

7.對象解構(gòu)賦值中的const

設(shè)置對象解構(gòu)賦值為const,則每個新的變量都為const,不可以改變其值,如果為對象,則不可改變其引用,這一點要小心處理

const {num}=this.state;
num++;   //error
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容