TypeScript Array型別
阿新 • • 發佈:2020-09-14
Array 型別即陣列型別,表示一組相同型別元素的有序集合。
陣列型別的語法如下:
// Array 型別語法 let array_name[:datatype]; //宣告 array_name = [val1,val2,valn...]; //初始化 // 在宣告時初始化 let array_name[:datatype] = [val1,val2,...]; var array_name[:datatype] = new Array([size]); var array_name[:datatype] = new Array(val1,val2,...);
Array 型別是通過字面量方式和 new Array() 方式建立例項,通過下標(索引)方式訪問與賦值。
// Array 型別例項 var sites: string[]; sites = ["Apple", "Banana", "Pear"] console.log(sites[0]); console.log(sites[1]); var nums: number[] = [101, 102, 103] console.log(nums[0]); console.log(nums[1]); console.log(nums[2]); var nums: number[] = new Array(3) nums[0] = 1; nums[1] = 2; nums[2] = 3;
Array 型別例項解構與迭代程式碼:
// 陣列解構 let arr: number[] = [12, 13] let [x, y] = arr // 將陣列的兩個元素賦值給變數 x 和 y console.log(x) console.log(y) // 陣列迭代 var j: any; var nums: number[] = [1001, 1002, 1003, 1004] for (j in nums) { console.log(nums[j]) }
Array 型別二維陣列例項:
// 二維陣列 var multi: number[][] = [[1, 2, 3], [23, 24, 25]] console.log(multi[0][0]) console.log(multi[0][1]) console.log(multi[0][2]) console.log(multi[1][0]) console.log(multi[1][1]) console.log(multi[1][2])
Array 型別例項方法列表:
concat() // 連線兩個或更多的陣列,並返回結果 every() // 檢測數值元素的每個元素是否都符合條件 some() // 檢測陣列元素中是否有元素符合指定條件 forEach() // 陣列每個元素都執行一次回撥函式 indexOf() // 搜尋陣列中的元素,並返回它所在的位置 lastIndexOf() // 返回一個指定的字串值最後出現的位置 join() // 把陣列的所有元素放入一個字串 map() // 通過指定函式處理陣列的每個元素,並返回處理後的陣列 filter() // 檢測數值元素,並返回符合條件所有元素的陣列 pop() // 刪除陣列的最後一個元素並返回刪除的元素 push() // 向陣列的末尾新增一個或更多元素,並返回新的長度 reduce() // 將陣列元素計算為一個值(從左到右) reduceRight() // 將陣列元素計算為一個值(從右到左) reverse() // 反轉陣列的元素順序 shift() // 刪除並返回陣列的第一個元素 unshift() // 向陣列的開頭新增一個或更多元素,並返回新的長度
Array 型別例項程式碼:
// Array 型別例項 let arr: number[] = [1, 2, 3]; arr.concat(4, 5, 6); // => [1,2,3,4,5,6] arr.every(i => i > 0) // => true arr.some(i => i < 2) // => true arr.filter(i => i <= 2) // => [1,2] arr.map(i => i + 1) // => [2,3,4] arr.pop() // => 3 arr.pop() // => 2 arr.push(2) // [1,2] arr.push(3) // [1,2,3] arr.unshift(0) // [0,1,2,3] arr.shift() // [1,2,3] arr.slice(0, 2) // => [1,2] arr.slice(-2) // => [2,3] arr.splice(3, 0, 4, 5, 6) // [1,2,3,4,5,6] arr.sort((a, b) => b - a) // [6,5,4,3,2,1] arr.reverse() // [1,2,3,4,5,6]