1.JS中函數是一等公民
2.定義函數
1.函數聲明
// 函數聲明(Function Declaration)
function sum(x, y) {
return x + y;
}
2.函數表達式
// 函數表達式(Function Expression)
let mySum = function (x, y) {
return x + y;
};
3.TS中的函數
1.嚴格控制了輸入輸出的類型
2.function sum(x: number, y: number): number {
return x + y;
}
3.let mySum = function (x: number, y: number): number {
return x + y;
};
4.TS: =>
let mySum: (x: number, y: number) => number = function (x: number, y: number): number {
return x + y;
};
TS類型定義中,=> 用來表示函數的定義,左邊是輸入類型,需要用括號括起來,右邊是輸出類型
!這和ES6中的箭頭函數是不一樣的
5.可以使用接口來定義函數的類型
6.可選參數,注意可選參數只能跟在必選參數的後面
7.JS中是不允許函數進行重載的,也就是同一個函數調用多次
TS中允許函數進行重載,也就是接受不同的參數,做出不同的迴應,同一函數調用多次