Skip to content

类型推断

如果没有明确的指定类型,那么 TypeScript 会依照类型推断(Type Inference)的规则推断出一个类型。

  1. 以下代码虽然没有指定类型,但是会在编译的时候报错

    tsx
    let num = '123'
    num = 123//报错
  2. TypeScript 会在没有明确的指定类型的时候推测出一个类型,这就是类型推论。

    tsx
    //事实上以上代码=以下代码
    let num:string = '123'
  3. 如果定义的时候没有赋值,不管之后有没有赋值,都会被推断成 any 类型而完全不被类型检查

    tsx
    let num
    num =1     //ok
    num='123'  //ok 
    num=true   //ok

但要注意,类型推断不是万能的,⾯对复杂类型时推断容易出问题,所以尽量还是明确的编写类 型声明