TypeScript基本语法---06数组

数组解构

我们也可以把数组元素赋值给变量,如下所示:

var arr: any[] = [12,'muzidigbig'];
var [x,y] = arr;  // 将数组的两个元素赋值给变量 x 和 y
console.log(`${x}---${y}`);

编译以上代码,得到以下 JavaScript 代码:

var arr = [12, 'muzidigbig'];
var x = arr[0], y = arr[1]; // 将数组的两个元素赋值给变量 x 和 y
console.log(x + "---" + y);

多维数组

一个数组的元素可以是另外一个数组,这样就构成了多维数组(Multi-dimensional Array)。

最简单的多维数组是二维数组,定义方式如下:

var arr_name:datatype[][]=[ [val1,val2,val3],[v1,v2,v3] ];
var multi: any[][] = [[1,'muzi'],[2,'digbig']];
console.log(`${multi[0][1]}---${multi[1][1]}`);

编译以上代码,得到以下js代码:

var multi = [[1, 'muzi'], [2, 'digbig']];
console.log(multi[0][1] + "---" + multi[1][1]);

数组方法

//filter();检测数值元素,并返回符合条件所有元素的数组。
var arr2: number[] = [1,2,3,4];
var filterArr2 = arr2.filter(function(valve) {
    return valve >= 2;
});
console.log(filterArr2);//[ 2, 3, 4 ]
//forEach();数组每个元素都执行一次回调函数。
arr2.forEach(function(valve) {
    console.log(valve);
});
var arr3:number[] = [1,2,3,4,4];
//indexOf();搜索数组中的元素第一次出现的位置,并返回它所在的位置。
var index4 = arr3.indexOf(4);
console.log(index4); //3
//join();把数组的所有元素以字符隔开放入一个字符串,并返回一个字符串。
var arr4:any[] = ['mu','zi','dig','big',1122];
var str1:string = arr4.join('-');
console.log(str1); //mu-zi-dig-big-1122
//split();把字符串以字符隔开放入一个数组中,并返回一个数组。
var newArr4:any[] = str1.split('-');
console.log(newArr4); //[ 'mu', 'zi', 'dig', 'big', '1122' ]
//map();通过指定函数处理数组的每个元素,并返回处理后的数组。
var arr5:number[] = [1,2,3,4];
var mapArr5 = arr5.map(function(value) {
    return value + 2;
});
console.log(mapArr5); //[ 3, 4, 5, 6 ]
var arr6:any[] = ['mu','zi','dig','big',1122,2020];
//pop();删除数组的最后一个元素并返回删除的元素。会改变原数组的长度
var delLastVal = arr6.pop();
console.log(delLastVal); //2020
console.log(arr6); //[ 'mu', 'zi', 'dig', 'big', 1122 ]
//push();向数组的末尾添加一个或更多元素,并返回新的长度。
var arr6Length = arr6.push('0114');
console.log(arr6Length);//6
console.log(arr6);//[ 'mu', 'zi', 'dig', 'big', 1122, '0114' ]
//shift();删除并返回数组的第一个元素。会改变原数组的长度
var delLastVal = arr6.shift();
console.log(delLastVal); //mu
console.log(arr6); //[ 'zi', 'dig', 'big', 1122, '0114' ]
//unshift();向数组的开头添加一个或更多元素,并返回新的长度。
//slice(startIndex,endIndex可选);选取数组的的一部分,并返回一个新数组。
var sliceArr6 = arr6.slice(2);
console.log(sliceArr6);//[ 'big', 1122, '0114' ]

//splice(index,删除的数量,添加的元素 可选);从数组中添加或删除元素。返回值被删除项目的新数组,如果有的话。
var spliceArr6 = arr6.splice(2,2);
console.log(spliceArr6); //[ 'big', 1122 ]

 

 

 

 

 

发布了246 篇原创文章 · 获赞 260 · 访问量 36万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章