急救系列讲究实用、常用,简单,没有深刻的原理、背景。
一、 为什么使用 TS?
优点
-
静态类型检查:函数或方法传参或变量赋值不匹配时,会出现编译错误提示 ,规避了开发期间的大量低级错误,省时,省力。
-
自动提示:自动提示变量类型、变量属性,不用来回切换文件或不小心写错导致的编码隐患。
-
引入泛型:让大中项目,前端框架底层源码具备了高可扩展性这个巨大的优势,同时也有类型安全检查的优势。
-
声明文件:声明文件像一个书的目录一样,清晰直观展示了依赖库文件的接口,type类型,类,函数,变量等声明。
-
轻松编译成 JS 文件:即使 TS 文件有错误,绝大多数情况也能编译出 JS 文件。
-
灵活性高:** 尽管 TS 是一门 强类型检查语言,但也提供了 any 类型 和 as any 断言,这提供了 TS的灵活度。
-
基础类型
- 布尔类型
- 数字类型
- 字符串
- 数组,元素类型后 + []、 Array<元素类型> 数组
- 元组,表示一个已知元素数量和类型的数组
let info: [string, number];
info = ['小明', 19]
- 枚举类型,对javascript 标准数据类型的补充
enum Name {
XIAOMing, // 0
XIAOHONG, // 1
XIAOLAN // 2
}
let newName: Name.XIAOMING
值默认从 0 开始编号,也可以手动添加,或者全部手动,也可以通过 Name[1] 翻过来找到值对应的名称,XIAOHONG。
- any 表示任意类型
- void 表示没有任何类型
- null 和 undefined 在默认情况下所有类型的子类,也就是说可以赋值给任意类型
- never 表示那些用不存在的类型,也是任意类型的子类
- object 表示非原始类型
- 类型断言 as
let value: any = "hello world"
let valueLength: number = (value as string).length
网友评论