📅  最后修改于: 2021-01-11 12:26:55             🧑  作者: Mango
数组是具有连续存储位置的相似类型元素的同质集合。
数组是用户定义的数据类型。
数组是一种数据结构,我们在其中存储相似数据类型的元素。在一个数组中,我们只能存储一组固定的元素。我们也可以将其用作对象。
该数组是基于索引的存储,其中第一个元素存储在索引0。以下结构有助于理解数组的结构。
代码优化:数组有助于优化代码,从而提高程序的速度和性能。它使我们能够更有效地检索或排序数组数据。
随机访问:它提供了在恒定时间内(与数组的位置和大小无关)访问数组的任何数据的能力。因此,我们可以直接获取位于任何索引位置的数组的任何数据。
大小限制:一个数组仅允许我们存储固定数量的元素。声明数组后,就无法更改其大小。因此,如果我们要插入比声明更多的元素,则不可能。
与JavaScript一样,TypeScript也支持数组。有两种声明数组的方法:
1.使用方括号。
let array_name[:datatype] = [val1,val2,valn..]
例:
let fruits: string[] = ['Apple', 'Orange', 'Banana'];
2.使用通用数组类型。
let array_name: Array = [val1,val2,valn..]
例:
let fruits: Array = ['Apple', 'Orange', 'Banana'];
数组有两种类型:
一维数组是一种线性数组,仅包含一行用于存储数据的数组。它具有一组方括号(“ []”)。我们可以使用行或列索引访问其元素。
句法
let array_name[:datatype];
初始化
array_name = [val1,val2,valn..]
例
let arr:number[];
arr = [1, 2, 3, 4]
console.log("Array[0]: " +arr[0]);
console.log("Array[1]: " +arr[1]);
输出:
Array[0]: 1
Array[1]: 2
多维数组是包含一个或多个数组的数组。在多维数组中,数据存储在基于行和列的索引中(也称为矩阵形式)。二维数组(二维数组)是多维数组的最简单形式。
句法
let arr_name:datatype[][] = [ [a1,a2,a3], [b1,b2,b3] ];
初始化
let arr_name:datatype[initial_array_index][referenced_array_index] = [ [val1,val2,val 3], [v1,v2,v3]];
例
var mArray:number[][] = [[1,2,3],[5,6,7]] ;
console.log(mArray[0][0]);
console.log(mArray[0][1]);
console.log(mArray[0][2]);
console.log();
console.log(mArray[1][0]);
console.log(mArray[1][1]);
console.log(mArray[1][2]);
输出:
1
2
3
5
6
7
数组对象使我们可以在一个变量中存储多个值。我们可以使用Array对象创建一个数组。 Array构造函数用于传递以下参数以创建数组。
句法
let arr_name:datatype[] = new Array(values);
例
//array by using the Array object.
let arr:string[] = new Array("JavaTpoint","2200","Java","Abhishek");
for(var i = 0;i
输出:
JavaTpoint
2200
Java
Abhishek
例
let i:any;
let arr:string[] = ["JavaTpoint", "2300", "Java", "Abhishek"];
for(i in arr) {
console.log(arr[i])
}
输出:
JavaTpoint
2300
Java
Abhishek
我们可以通过指定不带索引的数组名称来将数组传递给函数。
例
let arr:string[] = new Array("JavaTpoint", "2300", "Java", "Abhishek");
//Passing arrays in function
function display(arr_values:string[]) {
for(let i = 0;i
输出:
JavaTpoint
2300
Java
Abhishek
散布运算符用于从另一个数组或对象初始化数组和对象。我们还可以将其用于对象解构。它是ES 6版本的一部分。
例
let arr1 = [ 1, 2, 3];
let arr2 = [ 4, 5, 6];
//Create new array from existing array
let copyArray = [...arr1];
console.log("CopiedArray: " +copyArray);
//Create new array from existing array with more elements
let newArray = [...arr1, 7, 8];
console.log("NewArray: " +newArray);
//Create array by merging two arrays
let mergedArray = [...arr1, ...arr2];
console.log("MergedArray: " +mergedArray);
输出:
CopiedArray: 1,2,3
NewArray: 1,2,3,7,8
MergedArray: 1,2,3,4,5,6
数组方法及其说明的列表如下。
SN | Method | Description |
---|---|---|
1. | concat() | It is used to joins two arrays and returns the combined result. |
2. | copyWithin() | It copies a sequence of an element within the array. |
3. | every() | It returns true if every element in the array satisfies the provided testing function. |
4. | fill() | It fills an array with a static value from the specified start to end index. |
5. | indexOf() | It returns the index of the matching element in the array, otherwise -1. |
6. | includes() | It is used to check whether the array contains a certain element or not. |
7. | Join() | It is used to joins all elements of an array into a string. |
8. | lastIndexOf() | It returns the last index of an element in the array. |
9. | Pop() | It is used to removes the last elements of the array. |
10. | Push() | It is used to add new elements to the array. |
11. | reverse() | It is used to reverse the order of an element in the array. |
12. | Shift() | It is used to removes and returns the first element of an array. |
13. | slice() | It returns the section fo an array in the new array. |
14. | sort() | It is used to sort the elements of an array. |
15. | splice() | It is used to add or remove the elements from an array. |
16. | toString() | It returns the string representation of an array. |
17. | unshift() | It is used to add one or more elements to the beginning of an array. |