ts笔记|青训营笔记

54 阅读1分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 五 天 TypeScript 如何快速联系 前端主流基本都支持

image.png

image.png

  • 动态类型/静态类型
  • 动态类型:执行阶段才检验匹配(脚本类型)
  • 静态类型:java python必须先编译,生成产物去执行
  • 弱类型语言:类型转换,字符串和数字可以相加
  • typescript可以实现一个文档,用ide可以解析代码进行提示。
  • 可维护性增强:在编译时可以给出大部分错误
    2012年提出,ts支持渐进式改造升级,js->ts 基础数据类型可以直接定义

image.png :后面加类型 自定义类型,大写i开头表示类型 只读属性readonly

image.png 可选属性?: any是ts特有类型

image.png 少了name会进行提示

函数

image.png

函数自变量,匿名函数赋值给变量 函数重载

数组类型

image.png 花括号元组,符号相互映射

泛型

image.png 定义了一个T的变量,定义类型时还不明确

image.png 可以进行类型约束 泛型的默认语法

image.png reduce,as进行类型断言

高级类型

ts比js要多写很多代码,使用高级类型,基础数据类型定义高级类型。 最后自动延伸出非常多的类型 联合类型、交叉类型

image.png 存在很多重复,可以把author/type抽象出来,数组中元素可以有历史书/故事书两种类型。
代码可读性增强 联合交叉类型

image.png,可以更好表达出对需求的理解,历史书的种类必须是history,故事书类型必须是story。 类型保护、类型守卫

image.png