TypeScript中的数组

通过简单易学的示例学习在TypeScript中创建数组,克隆数组,合并数组以及遍历数组元素。

目录


通过数组
克隆数组
合并数组创建数组迭代

创建数组

像JavaScript一样,TypeScript具有数组类型以允许分配多个值。通过在类型之后添加方括号来指定数组。

每次将新值添加到数组时,编译器都会检查类型兼容性,并在类型不匹配时发出警报。

//array declaration and initialization in separate lines
let myArr1: boolean[];
let myArr2: boolean[] = [];
let myArr3: boolean[] = new Array();
let myArr4: boolean[] = Array();

myArr1 = [false, false, true];

//array inline declaration and initialization

//array of booleans	
let flags1: boolean[] = [false, false, true];	
//or
let	flags2: Array<boolean> =[false, false, true];

//array of numbers
let scores1: number[] = [10, 20, 30, 40];	
//or
let	scores2: Array<number> = [10, 20, 30, 40];	

向数组添加元素

要向数组添加更多元素,请使用push()方法。

//array of numbers
let scores: number[] = [10, 20, 30, 40];

scores.push( 50 );	//[10, 20, 30, 40, 50]

scores.push( 'abc' );	//data.ts(24,14): error TS2345: Argument of type '"abc"' is not  
						//assignable to parameter of type 'number'.

遍历数组

您可以使用for...of循环或传统的for循环来迭代数组元素。

使用“ for…of”循环

let scores :number[] = [10, 20, 30, 40];	

for (var score of scores) {
	console.log(score);		//Outputs 10 20 30 40
}
请勿使用用于循环访问对象属性的“ for…in”循环。

使用传统的for循环

let scores :number[] = [10, 20, 30, 40];	

for (var i = 0; i < scores.length; i++) {
	console.log(scores[i]);		//Outputs 10 20 30 40
}

克隆数组

使用传播 Operator 克隆数组。这是最简单的建议方法。

let origScores :number[] = [10, 20, 30];	

let clonedScores = [...origScores];

console.log(clonedScores);		//[10, 20, 30]

origScores.push( 40 );

console.log(origScores);		//[10, 20, 30, 40]	is "changed"
console.log(clonedScores);		//[10, 20, 30] 	is "unchanged"

合并阵列

也使用散布运算符合并数组。这是最简单的建议方法。

let scores1 :number[] = [10, 20, 30];	
let scores2 :number[] = [40, 50, 60];	

let mergedScore = [...scores1, ...scores2];

console.log(mergedScore);	//[ 10, 20, 30, 40, 50, 60 ]

如果您有任何疑问,请在评论区留言,我会一一解答。

saigon has written 1445 articles

One thought on “TypeScript中的数组

Leave a Reply