可选参数、默认参数只能放到参数列表末尾,否则会报错
?是可选参数
code: number = 0 默认参数
可以给函数的参数赋默认值code: number = 0
可以不传入全部参数code?: number
可选参数和默认参数都应该在参数表的末尾,从右到左排列
1、可选参数
2、默认参数
let log3 = (message: string,code ?: number) => {
// 加?code可以不传,code:number = 0,可以设置默认值,也可以不传
// 可选参数,有默认值的参数,得在后面位置
console.log(message,code)
}
log3("hello")
函数类型
1、function关键字
2、箭头函数
3、函数可选参数,使用?字符标识
4、函数可选参数,使用默认值标识
函数类型
let log1 = function (message) {
console.log(message);
}
let log2 = (message) => console.log(message);
与javascript写法基本类似,区别就是可以指定参数变量类型和返回数据类型
let log3 = (message: string) => console.log(message);
// 通过问号表示可选性,不确定的都放在后面
let log4 = (message?: string) => console.log(message);
可选参数
默认参数
可选参数
默认参数
函数类型
let log = function (message) {
console.log(message);
}
let log2 = (message: string) => console.log(message);
log2('hello');//参数只能转入string
typescript中,函数的写法与JavaScript的完全一样,与JavaScript最大的不同就是,typescript 可以给函数绑定类型。
let log3 = (message: string, code?: number) => {
console.log(message, code);
}
log3('hello', 3);
typescript中,调用函数与JavaScript有个显著的不同,就是typescript调用函数过程中,如果函数定义了两个参数,调用时必须填写两个参数,并且类型要一致。typescript可以使用 ? 来表示参数的可选性,被用 ? 来指定的参数可以不填写,函数里面的这个参数就被设定为undefined;也可以给参数设定默认值
let log3 = (message: string, code: number = 0, data?: array) => {
console.log(message, code);
}
log3('hello');
注意:不管是可选参数,还是默认参数,都必须在参数列表的末尾,并且按照从后往前的顺序进行排列
function