函数参数和返回类型定义
这是我参与更文挑战的第2天,活动详情查看更文挑战
类型注解和类型推断
- 如果 TS 能够自动分析变量类型, 我们就什么也不需要做了
- 如果 TS 无法分析变量类型的话, 我们就需要使用类型注解
// 注解 通过:的形式
function getTotal(one: number, two: number) {
return one + two;
}
const total = getTotal(1, 2);
// 推断通过鼠标放上去的形式
let countInference = 123;
1. 普通函数参数注释返回定义的写法
function getTotal(one: number, two: number): number {
return one + two;
}
const total = getTotal(1, 2);
2. 函数无返回值时定义方法
function sayHello(): void {
console.log("hello world");
}
3. never 返回值类型
如果一个函数是永远执行不完的,就可以定义值为never,比如执行执行的时候抛出异常,这样就不能执行完了,再或者是死循环
function errorFuntion(): never {
throw new Error();
console.log("Hello World");
}
4. 函数参数为对象(解构)时 不是使用如上的写法
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 });