学习链接: 学习TypeScrip4(数组类型)_小满zs的博客-CSDN博客
1. 类型 []
// 类型加 []
let arr:number[] = [123]
// 这样会报错,定义了数字类型出现字符串,是不允许的
let arr:number[] = [1,2,3,'1']
// 操作方法添加,也是不允许的
let arr:number[] = [1,2,3]
arr.unshift('1')
let arr:number[] = [1,2,3]; // 数字类型的数组
let arr2:string[] = ['1', '2'] // 字符串类型的数组
let arr3:any[] = [1, '2', true] // 任意类型的数组
数组泛型
规则 Array<类型>
let arr:Array<number> = [1,2,3,4,5]
用接口表示数组
一般用来描述类数组
interface NumberArray{
[index: number]: number;
}
let fibonacci: NumerArray = [1,2,2,3,4]
// 表示:只要索引的类型是数字时,那么值的类型必须是数字
多维数组
let data = number[][] = [[1,2],[3,4]]
arguments 类数组
function Arr(...args:any): void {
console.log(arguments)
// 错误的 arguments, arguments是类数组,不能这样定义
let arr:number[] = arguments
}
Arr(111, 222, 3333)
function Arr(...args: any): void{
console.log(arguments)
// ts 内置对象 IArguments 定义
let arr: IArguments[] = arguments
}
Arr(111, 222, 333)
// 其中IArguments是TypeScript 中定义好了的类型,他实际上就是:
interface IArguments {
[index: number]: any;
length: number;
callee: Function;
}
any 在数组中的应用
一个常见的例子,数组中可以存在任意类型
let list:any[] = ['test', 1, [], {a:1}]