我想說的是
箭頭函數其實就是函式表達式(匿名函數)的簡化,是 ES6 中新增的功能
建構式中不能用箭頭函數,會報錯
箭頭函數是 ES6 中新增加的功能
先看看在沒有使用箭頭函數的時候如果寫一個加法
function add(a,b){
return a+b;
}
console.log(add(1,2));
簡單易懂,那如果用箭頭函數呢
var add =(a,b) => return a+b
console.log(add(1,2))
從這邊我們可以了解到,箭頭函數其實就是直接將內部的運算返回
基本語法就是
(參數1, 參數2, …, 參數N) => 要回傳的內容;
// 只有一個參數時,括號才能不加: 參數1 => 要回傳的內容;
// 若無參數,就一定要加括號: () => { statements }
要注意的就是,若執行內容只有一行,那直接在 =>
後面接要執行的內容就好
若是大於一行呢?若在大於一行的情況下,就需要使用大括弧 {}
以及 return
var add =(a,b) => {
console.log('hello 箭頭函數')
return a+b;
};
console.log(add(1,2));
有一種情況下不可使用箭頭函數
那就是在 建構式
中,是不可以使用箭頭函數的
會直接在 new 的時候拋出錯誤!
var Foo = () => {};
var foo = new Foo(); // TypeError: Foo is not a constructor
關於箭頭函數還有很多東西沒講到,還是用到的時候再來細說
原本想把 map 寫在一起的,不過這篇長度感覺差不多了,再寫篇幅太常閱讀起來有點累
主題也不太連貫,關於 map 另外寫一篇吧