TypeScript学习
类型推断
let str = 'abc'
str只能是字符串类型,不能再被赋予别的数据类型
类型注解
let str: string = 'abc'
类型断言
let numArr = [1,2,3] const result = numArr.find(item => item > 2) as number result * 5
通过as来断定类型
基础类型和联合类型
let v4: string | null = null
一个变量可能会被赋予多种类型,用
|
间隔赋值限定:
let v5: 1 | 2 | 3 = 2
数组
限定类型
let arr: number[] = [1,2,3] let arr1: Array<string> = ['a','b','c']
元组
let t1: [number,string,number?] = [1,'a']
?代表可选
枚举:
enum MyEnum { A, B, C } //调用方式 console.log(MyEnum.A) console.log(MyEnum[0])
函数
function MyFn (a:number, b?: string, ...rest: number[]): void {//参数赋予类型 return a+b }
参数括号后是返回值分配,参数名后跟
?
代表是可选的,必选放左侧,可选放右侧,…rest
是剩余参数,也是通过:
来指定类型接口
interface Obj { name: string, age: number } const obj: Obj = { name: 'a', age: 10 }
类型别名
type MyUserName = string | number let a: MyUserName = 10
泛型
function myFn<T>(a: T,b: T): T[]{ return [a,b] } myFn<number>(1,2) myFn('a','b')