今天所要講述的JS概念是匿名函數,有時候我們會在變數內放入函數,而這時函數的名字就變得不那麼的重要,因為要取用就使用變數名稱就好,因此就延伸出了這種用法。
ES5 階段:
匿名變數的由來是因為當初有人會把函數寫進變數當中,如以下:
const sum = function plus(number1, number2) {
return number1 + number2;
};
而在之後覺得函數名稱不重要,因為使用時用變數名稱就好(以上面例子舉例,使用sum(1, 2)即可),並不需要特地取名,因此在 ES5 裡就把它簡寫成以下樣子:
const sum = funciton (number1, number2) {
return number1 + number2;
};
ES6 階段(主要使用法):
在ES6 中,人們又用了更為簡單的寫法,如以下:
const sum = (number1, number2) => {
return number1 + number2;
};
用上面例子做舉例,當要使用此匿名變數時,和一般在使用函數時一樣,只不過名稱是用變數名稱,示範如下:
sum(1, 3);
在使用函數時,可以在引數那邊加上預設值,而匿名函數也不例外,假設今天你想讓一個函數不傳任何引數進去,但卻又還想要有值可以依照以下來寫:
const sum = (number1 = 1, number2 = 2) => {
return number1 + number2;
};
這樣就算你今天不傳任何引數進去函數中,他還是可以使用預設值運作,給你答覆。