重塑类型思维
接口的提供方将被迫去思考API的边界,从代码的编写者蜕变为代码的设计者,
typescript是javascript的超集,将动态弱类型的js,增强了类型检查束缚,让前端开发的路上走的更稳,更远。
typescript
静态强类型
编译器:tsc: 使用tsc编译一个ts文件
基本类型
基于ES6新增了几种数据类型
- Boolean
- Number
- String
- Array
- Function
- Object
- Symbol
- undefined
- null
- void
- any
- never
- 元组
- 枚举
- 高级类型
类型注解
相当于强类型语言中的类型声明
语法:(变量/函数):type
原始类型示例
let bool:boolean = true
let num:number = 123
let str:string = "abc"
数组类型示例
let arr1:number[] = [1, 2, 3] // 表示只有整形数字的数组
let arr2:Array<number> = [1, 2, 3]
let arr3:Array<number|string> = [1,2,3,"abc"] // 表示联合类型的数组
元组类型:特殊的数组
let tuple:[number, string, boolean] = [234, "dfd", true] // 其实是固定类型的数组
函数类型
let add = (x:number,y:number) => x + y // 定义了函数
let compute:(x:number,y:number) => number // 定义了函数但是没有具体实现
/*具体实现*/
compute = (a, b) => a + b
对象类型
let obj:object = {x:1,y:2} // 这种定义方法不可修改
let obj2:{x:number,y:number} = {x:1,y: