函数返回类型的注解
// 定义函数返回值类型
function getTotal(one: number, two: number): number {
return one + two;
}
// 使用类型推断,不需要明确规定注解类型
const total = getTotal(1, 2);
// 无返回值
function sayHello(): void {
console.log("hello world");
}
never
返回值类型
永远执行不完。
// 抛异常
function errorFuntion(): never {
throw new Error();
console.log("Hello World");
}
// 死循环
function forNever(): never {
while (true) {}
console.log("Hello JSPang");
}
函数参数类型定义的坑
函数参数为对象(解构)时
// 正确写法
function add({ one, two }: { one: number, two: number }): number {
return one + two;
}
const three = add({ one: 1, two: 2 });
// 对象只有一个变量也得这么写
function getNumber({ one }: { one: number }): number {
return one;
}
const one = getNumber({ one: 1 });