速通Typescript
一天速通
数组和元组区别 :
使用Typescript后数组内的元素类型必须一样,而元组则不用相同
数组 : let array : number[] = [1,2]
元组 : let arr: [number, string] = [1, "a"]; 元组会限制元组内元素个数和类型
可以在元组的指定元素后加一个问号,表示其可选
如:let arr: [number, string?] = [1,2];
string?
表示第二个元素必须是 string | undefined
类型,但实际赋值的 2
是 number
类型
function test (a:number , b?:string){}
可以在元组的指定元素后加一个问号,表示其可选
枚举:
enum Color {red,blue,yellow}
枚举内元素按照1,2,3...的顺序赋值
如red对应的值为0
任意值 :
let prop:any = 1 let array:any[] = [1,'a']
这时prop可以是任何类型的值
用一个例子解释类型断言
我想要找出numArr 中大于2的值,这时会报错,因为ts认为数组里面可能会没有大于2的值,这样result就是undefined , 这是ts不想看到的,假如我确定数组中就是会存在大于2的值我又不想让ts报错,就在后面加一个as number
这样我就把result确定为一个数字