箭頭函數(=>):函數簡寫
- 無參數:
() => {}
- 單個參數:
x => {}
- 多個參數:
(x, y) => {}
- 解構參數:
({x, y}) => {}
- 嵌套使用:部署管道機制
- this指向固定化
- 並非因為內部有綁定
this
的機制,而是根本沒有自己的this
,導致內部的this
就是外層代碼塊的this
- 因為沒有
this
,因此不能用作構造函數
- 並非因為內部有綁定
箭頭函數誤區
- 函數體內的
this
是定義時所在的對象
而不是使用時所在的對象
- 可讓
this
指向固定化,這種特性很有利於封裝回調函數 - 不可當作
構造函數
,因此箭頭函數不可使用new命令
- 不可使用
yield命令
,因此箭頭函數不能用作Generator函數
- 不可使用
Arguments對象
,此對象在函數體內不存在(可用rest/spread參數
代替) - 返回對象時必須在對象外面加上括號