类型检查机制
类型检查机制:TypeScript 编译器在做类型检查时,所秉承的一些原则,以及表现出的一些行为。
作用:辅助开发,提高开发效率。
- 类型推断
- 类型兼容性
- 类型保护
类型推断
不需要指定变量的类型(函数的返回值类型),TypeScript 可以根据某些规则自动为其推断出一个类型。
- 基础类型推断
- 最佳通用类型推断:当需要从多个类型中推断出一个类型的时候,ts 会尽可能的推断出一个兼容当前所有类型的通用类型
- 上下文类型推断
// 基础类型推断
// 1) 初始化变量的时候
let a = 1;
let b = [1]// 2) 设置函数默认参数的时候,还有就是确定返回值的时候
let c1 = (x = 1) => {};
let c2 = (x = 1) => x + 1;// 最佳通用类型推断
let b = [1, null]// 上下文类型推断:通常发生在事件类型中
// 根据左侧的事件绑定,推断出右侧的KeyboardEvent类型
window.onkeydown = (event) => {// console.log(event.button) // button 是鼠标事件的属性,不是键盘的,这里会报错
}// 类型断言:可以增加代码的灵活性,但不能滥用
interface Foo {bar: number
}let foo = {} as Foo;foo.bar = 1;