2022-12-07 21:18

TypeScript入门(8) — 数组

王姐姐

WEB前端

(516)

(0)

收藏

1.1. 简单类型

在Typescript中,简单数组类型使用"[]"来定义。

const arr:number[] = [1,2,3]

[]前面的number表示数组元素类型为number。

如果数组的元素有多个类型的话,那么就设置为复合类型:

const arr:(number|string)[] = ["aaa",111]

1.2. 泛型类型

使用泛型来表示数组:

const data:Array<string | number> = [1,2,'123'];

也可以定义符合类型:

const data: Array<string | number> = [1, 2, "123"]

1.3. 只读数组

使用"ReadonlyArray"内置类型:

const readArr: ReadonlyArray<number> = [1,2,3]

使用readonly修饰符,readonly修饰符不能和泛型数组类型一起使用::

const readArr: readonly number[] = [1,2,3];

使用""Readonly工具类型:

const readArr: Readonly<number[]> = [1,2,3]

普通数组可以赋值给只读数组,但是只读数组不能赋值给普通数组。

const a: number[] = [0];
const ra: readonly number[] = [0];
const x: readonly number[] = a;  // 正确
const y: number[] = ra;          // 编译错误,类型 "readonly number[]" 为 "readonly",不能分配给可变类型 "number[]"

1.4. 数组解构

let x: number;
let y: number;
let z: number;
let arr = [1,2,3,4];
[x,y,z]=arr;
console.log(x,y,z);//1 2 3

1.5. 数组展开运算符

let arr1 =[1,2];
let arr2= [...arr1,3,4,5];
console.log(arr2);//(5) [1, 2, 3, 4, 5]
console.log(...arr2);//1 2 3 4 5

1.6. 数组遍历

let nums: number[]=[1,2,3,4,5];
for(let i of nums){
    console.log(i);
}
for(let i=0;i<nums.length;i++){
    console.log(nums[i]);
}
nums.forEach(i=>console.log(i));

0条评论

点击登录参与评论