- TypeScript里的每个函数参数都是必须的,传参的时候要有对应的值,不然会报错。可以使用可选参数,在参数名后加“?”,可选参数必须跟在必须参数后面,若将x设置可选,则x放在后面。
function aaa(x: string, y?: string) {
if (y)
return x + "," + y;
else
return x;
}
- 在所有必须参数后面的带默认初始化的参数都是可选的,与可选参数一样,在调用函数的时候可以省略。带默认值的参数不需要放在必须参数的后面。 如果带默认值的参数出现在必须参数前面,用户必须明确的传入undefined值来获得默认值。
function aaa(x = "hello", y: string) {
return x + "," + y;
}
aaa(undefined, "world") //正常输出,不会报错
aaa("world") //error
aaa("hello", "world") //正常输出,不会报错
- 剩余参数会被当做个数不限的可选参数。 可以一个都没有,同样也可以有任意个。剩余参数前面用”...“表示。
function aaa(x: string, ...y: string[]) {
return x + "," + y.join(",");
}
- 函数重载的方法是为同一个函数提供多个函数类型定义来进行。