数组的类型
可以使用类型+[]或泛型方式定义数组的类型
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| let arr:number[] = [1,2,3,4,5]
let arr2:Array<string> = ["1","2","3","4","5"]
interface X { name: string } let arr: X[] = [ { name:"yajue" }, { name:"knn" } ]
|
二维数组
如果需要定义二维数组或多维数组,使用类型+[]形式时,有几维就加几个[],而泛型形式则是套娃
1 2 3
| let arr:number[][] = [[1],[2],[3]] let arr2:Array<Array<number>> = [[1],[2],[3]]
|
非单一类型的数组
1 2 3 4 5
| let arr:any[] = [114, "514", true]
let arr2:[number,string,boolean] = [114, "514", true]
|
用接口表示数组
一般用来描述类数组
1 2 3 4 5
| interface NumberArray { [index: number]: number; } let fibonacci: NumberArray = [1, 1, 2, 3, 5];
|
arguments数组
也可以给函数的剩余参数定义类型
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| function a(...args: number[]) { console.log(args) let a: IArguments = arguments }
a(1,2,3)
interface IArguments { callee: Function length: number [index: number]: any }
|