Tag: es6
預設參數(Default parameters)
函式的傳入參數預設值,在未指定實際的傳入值時,一定是 undefined,ES6 的函式預設參數允許沒有值傳入或是傳入值為 undefined 的情況下,參數能以指定的預設值初始化,指定不同的預設值可能在某些情況很管用。 在以前還沒有預設參數的時候,程式會以||防呆,以免參數為 undefined。 1234567891011function foo(x, y){ x = x || 1
類別(Classes)
在 ES6 以前,想要簡化相同程式碼,必須用 prototype 原型來達到類與類繼承,ES6 引入了類別(Class)作為 JavaScript 現有原型程式(prototype-based)的語法糖,提供了一個更簡潔的語法來建立物件與處理繼承。 類別(Classes)實際上是一種特別的函數,就跟你可以定義函數敘述和函數宣告一樣。透過 Class 建立物件,將兩個或多個物件的相同結構抽取出來變成
分散 / 其餘(Spread/Rest)
ES6 引進一個新的 … 運算子(你沒看錯,就是三個點),它通常被稱為 spread(分散) 或 rest(其餘) 運算子,取決於被使用的時機與方式。 分散(Spread)分散(spread)用於將 陣列 展開為個別的值。123const numbers = [1, 2, 3]const newNumbers = [...numbers, 4]console.log(newNumbers) //[
箭頭函式(Arrow Function)
箭頭函式 Arrow Function 是 ES6 非常受人喜愛的功能,同時支援普通函式所具備的功能,包括預設值、解構、rest 參數,它擁有以下幾個特性: 更短的函式寫法(怎麼寫) 綁定 this(怎麼用) 更短的函式寫法先說結論,使用箭頭函式,以下兩種寫法是相等的。123456//normal functionfunction add(x){ return x + 5}
模組(Modules)
Modules 模組系統是 ES6 的新功能,透過 import 與 export 關鍵字,你可將以往冗長且結構複雜的程式碼拆解成各個小區塊,以便我們可以把A檔案的程式碼導入到B檔案使用。Exports 有兩種輸出方式,分別是 Default export 與 Named exports 預設匯出(Default export)Default export 的作用是為模組指定預設輸出。舉個例子,假
解構賦值(Destructuring Assignment)
解構賦值是 ES6 的新特性,可以將陣列或物件中的資料取出成獨立變數。 陣列解構陣列解構強調順序,左右對照相對應的元素,右邊陣列的值即可對左邊陣列相對應的元素賦值。123456var foo = ['a', 'b', 'c'];var [one, two, three] = foo;console.log(one); // "a"console.log(two); // "b"console.lo
let 和 const
範疇在 ES6 之前,在 Javascript 要宣告變數必須要用 var。1var a = 100以 var 宣告的變數,作用範疇以 function(函式) 為基準,如果在 funciton 以外宣告,叫做全域變數,在檔案的各個位置都能使用。 在 function 以內宣告,叫做區域變數,它的作用範疇只存在於其宣告的 function 之內,離開該 function,此變數將不能再被使用。1