Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ts类型检查机制

类型推断

  • 基础类型推断

    • 初始化 推断
      let x = 1;
      
      • 自动推出x是number类型
    • 默认参数 推断
      let speak = (x = "nothing") => {
        return x;
      };
      
  • 自动推断x是string类型

    • 返回值 推断
      let sum = (x: number, y number) => {
          return x + y;
      }
      
      • 自动推断返回值是number类型
  • 最佳类型推断

    • 多类型合一 推断
      let bucket = [123, "456"];
      
      • 自动推断 bucket类型 为 number 和 string 的联合类型
  • 上下文类型推断

    • 事件处理
      window.onKeydown = (event) => {};
      
      • 自动推断 event类型 为 KeyboardEvent

类型断言

  • 使用 as 类型,强行断言一个东西是这个类型,用于通过检查
    • 一般不建议使用,因为一个东西还可能会是其他类型,比如undefined,强行断言使用就会造成错误
    • 最好在生成这个东西时,就明确类型