簡約而不簡單的六個ES6新特性

Javascript社區中,每個人都熱衷於擁抱JS提供的各種新的API、語法和特性 —— 它們使我們能夠更高效,更智能地編寫代碼。ES6帶來了一大波新的好東西,但同時我也對一些小的更新十分感興趣。以下是我最中意的6個新特性:

Object[key]語法

自古以來,JavaScript開發者一大煩惱便是無法在聲明一個對象的時候,使用變量設置對象的某個屬性名 —— 你必須在聲明完了這個對象之後在加上這個鍵值對:

簡約而不簡單的六個ES6新特性

在這個簡單的例子中看起來這種模式僅僅有些不太方便,但是在複雜的環境下,這種寫法就會顯得十分的混亂和醜陋!不過還好,ES6為我們帶來了終結這一團亂麻的方法:

簡約而不簡單的六個ES6新特性


箭頭函數

不要怕,要理解箭頭函數的用法並不意味著你要掌握ES6的每一個新特性(事實上他們中的許多都令初級開發者感到困擾)。箭頭函數為我們壓縮代碼量提供了一個非常簡單高效的方法:

簡約而不簡單的六個ES6新特性

如你所見,我們並沒有用到function或return關鍵字,有時候你甚至不用使用() —— 箭頭函數是實現一些簡單函數的偉大方式!


find/findIndex

你可以使用Array.prototype.indexOf來獲取某項在數組中的位置,但是indexOf方法並不能使用條件搜索的方式進行查找,換句話說,你必須精確查找一個已知字段的值。不妨來試試find和findIndex —— 使用這兩個方法你能找到第一個匹配規則的值:

簡約而不簡單的六個ES6新特性

通過允許條件搜索,find和findIndex也避免了不必要的遍歷和副作用。


展開運算符

展開運算符可以在調用數組或是可迭代對象時,將其拆散撐單獨的參數,比如以下例子:

簡約而不簡單的六個ES6新特性

使用展開運算符的一個優勢在於可以方便地將可迭代對象(比如節點對象和參數對象)轉化為真正的數組 —— 從此我們可以告別Array.from或者其它hack的寫法。


字符串模板語法

在過去JavaScript中的多行字符串是使用拼接字符串或是在行尾加\字符的形式來實現的,然而不管使用哪種方法都顯得難以維護。當然更有甚者使用


分享到:


相關文章: