函数
函数作为参数时如何编写类型
function foo() { }
function bar(fn: () => void) {
fn()
}
bar(foo);
定义常量时,编写函数的类型
函数类型固定的 () => void 括号里面写参数 void返回值可以是任何类型的,如果确定类型也可以写number之类的
const add: (num1: number, num2: number) => void = function (num1: number, num2: number) {
return num1 + num2;
}
console.log(add(1,2));
例子
function computed(n1: number, n2: number, fn: (num1: number, num2: number) => number) {
return fn(n1, n2);
}
const s1 = computed(10, 20, function (a1, a2) {
return 123;
})
console.log(s1);
//如果有变量名重复可以写 export
export { }
参数可选和默认值
可选参数必须在后面,也就是说可选参数后面不能有确定的参数
函数的参数可以有默认值
function foo(s1: number, s2: number = 3) {
console.log(s1, s2);
}
//可以不传哟默认值的参数
foo(10);
函数的重载
function add(num1: number, num2: number): number;
function add(num1: string, num2: string): string;
function add(num1: any, num2: any): any {
return num1 + num2
}
add(1, 2)
// 在函数重载中,实现函数是不能直接被调用的