函数的相关约束
函数重载:在函数实现之前,对函数调用的多种情况进行声明
可选参数:可以在某些参数名后加上问号,表示该参数可以不用传递。可选参数必须在参数列表的末尾。
# 举个栗子-应用场景
/**
* 相乘的结果
* @param a
* @param b
*/
function combine(a: number, b: number): number;
/**
* 相加的结果
* @param a
* @param b
*/
function combine(a: string, b: string): string;
function combine(a: number | string, b: number | string): number | string {
if(typeof a === "number" && typeof b === "number") {
return a * b;
}else if(typeof a === "string" && typeof b === "string") {
return a + b;
}
throw new Error("a和b必须是相同的类型")
}
combine(1, 2)
function sum(a: number, b: number, c?: number) {
if(c) {
return a + b + c;
}
}
function sum(a: number, b: number, c: number = 0) {
return a + b + c;
}
标签:function,return,函数,number,param,约束,combine,相关,string
From: https://www.cnblogs.com/bingquan1/p/17496835.html