:number}):string{}
默认参数
es6, ts中可指定参数默认值,配置了默认值的参数也是可选参数
function func(name:string, age:number = 20):...string{}
剩余参数
使用扩展运算符(…)传递多个参数
function func(...nums:number[]):number{
for(let i=0;i('abc','cdefg')
func([1,2,3],[4,5])
函数重载
实现函数必须兼容所有重载签名
调用时也必须与重载签名匹配
function func(name:string):string...:number):string { // 实现签名
return ''
}
func1('PSR')
func1('PSR',18)
func1(true) // 报错
注:能使用联合类型参数,...hello':[4,5,6] // 报错,因为此处参数为联合类型 string | any[] 与重载签名参数不兼容
函数类型表达式
function call(fn: (name:string) =>