可选参数
形参没有传默认是undefined
可选参数用的不多,内部还要多层判断,一般都用默认参数实现
function bugGun(gunName:string,count?:number) {console.log(`有眼光~【${gunName}】是村里最好的强,送你[${count}]把,咱们P城来相见`)}bugGun('Ak')// 不传的话默认是undefined//有眼光~【Ak】是// 村里最好的强,送你[undefined]把,咱们P城来相见function bugGun1(gunName:string,count?:number) {console.log(`有眼光~【${gunName}】是村里最好的强,送你[${count? count: 1}]把,咱们P城来相见`)}bugGun1('m24')// 有眼光~【m24】是// 村里最好的强,送你[1]把,咱们P城来相见
默认参数
,默认参数本身就是可选参数了,所以默认就不要写可选了
function bugGun2(gunName: string = "awm", count: number = 5) {console.log(`有眼光~【${gunName}】是村里最好的强,送你[${count? count: 1}]把,咱们P城来相见`)}// 两个参数都不传bugGun2() //有眼光~【awm】是//村里最好的强,送你[5]把,咱们P城来相见// 前传后不传bugGun2('ak')//有眼光~【ak】是//村里最好的强,送你[5]把,咱们P城来相见// 前不传后传bugGun2(undefined,99)//有眼光~【awm】是//村里最好的强,送你[5]把,咱们P城来相见
剩余参数
剩余参数的类型必须是数组,具体是指明类型的数组
function add1 (x: number, y: number, ...restOfNum: number[]): void {let resNum: number = x + y;for( let ele of restOfNum ) {resNum += ele}console.log(resNum)}add1(1,2) // 3add1(1,2,6,8,9) // 26
如果觉得《12 ts函数 可选参数 默认参数 剩余参数》对你有帮助,请点赞、收藏,并留下你的观点哦!