1、TypeScript Array(數(shù)組)
數(shù)組對(duì)象是使用單獨(dú)的變量名來(lái)存儲(chǔ)一系列的值。
數(shù)組非常常用。
假如你有一組數(shù)據(jù)(例如:網(wǎng)站名字),存在單獨(dú)變量如下所示:
var site1="Google"; var site2="Runoob"; var site3="Taobao";復(fù)制
如果有 10 個(gè)、100 個(gè)這種方式就變的很不實(shí)用,這時(shí)我們可以使用數(shù)組來(lái)解決:
var sites:string[]; sites = ["Google","Runoob","Taobao"]復(fù)制
這樣看起來(lái)就簡(jiǎn)潔多了。
TypeScript 聲明數(shù)組的語(yǔ)法格式如下所示:
var array_name[:datatype]; //聲明
array_name = [val1,val2,valn..] //初始化
或者直接在聲明時(shí)初始化:
var array_name[:datatype] = [val1,val2…valn]
如果數(shù)組聲明時(shí)未設(shè)置類型,則會(huì)被認(rèn)為是 any 類型,在初始化時(shí)根據(jù)第一個(gè)元素的類型來(lái)推斷數(shù)組的類型。
實(shí)例
創(chuàng)建一個(gè) number 類型的數(shù)組:
var numlist:number[] = [2,4,6,8]
整個(gè)數(shù)組結(jié)構(gòu)如下所示:
索引值第一個(gè)為 0,我們可以根據(jù)索引值來(lái)訪問(wèn)數(shù)組元素:
[qr23.cn/AKFP8k
]點(diǎn)擊學(xué)習(xí)更多
TypeScript
var sites:string[];
sites = ["Google","Runoob","Taobao"]
console.log(sites[0]);
console.log(sites[1]);復(fù)制
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
sites = ["Google", "Runoob", "Taobao"];
console.log(sites[0]);
console.log(sites[1]);復(fù)制
輸出結(jié)果為:
Google
Runoob
以下實(shí)例我們?cè)诼暶鲿r(shí)直接初始化:
TypeScript
鴻蒙NEXT開(kāi)發(fā)文檔與視頻教學(xué)——mau123789是v直接領(lǐng)
var nums:number[] = [1,2,3,4]
console.log(nums[0]);
console.log(nums[1]);
console.log(nums[2]);
console.log(nums[3]);復(fù)制
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
var nums = [1, 2, 3, 4];
console.log(nums[0]);
console.log(nums[1]);
console.log(nums[2]);
console.log(nums[3]);
輸出結(jié)果為:
1
2
3
4
2、Array 對(duì)象
我們也可以使用 Array 對(duì)象創(chuàng)建數(shù)組。
Array 對(duì)象的構(gòu)造函數(shù)接受以下兩種值:
- 表示數(shù)組大小的數(shù)值。
- 初始化的數(shù)組列表,元素使用逗號(hào)分隔值。
實(shí)例
指定數(shù)組初始化大小:
TypeScript
var arr_names:number[] = new Array(4)
for(var i = 0; i< arr_names.length; i++) {
arr_names[i] = i * 2
console.log(arr_names[i])
}
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
ar arr_names = new Array(4);
for (var i = 0; i < arr_names.length; i++) {
arr_names[i] = i * 2;
console.log(arr_names[i]);
}
0
2
4
6
以下實(shí)例我們直接初始化數(shù)組元素:
TypeScript
var sites:string[] = new Array("Google","Runoob","Taobao","Facebook")
for(var i = 0;i< sites.length;i++) {
console.log(sites[i])
}
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
var sites = new Array("Google", "Runoob", "Taobao", "Facebook");
for (var i = 0; i < sites.length; i++) {
console.log(sites[i]);
}
輸出結(jié)果為:
Google
Runoob
Taobao
Facebook
3、數(shù)組解構(gòu)
我們也可以把數(shù)組元素賦值給變量,如下所示:
TypeScript
var arr:number[] = [12,13]
var[x,y] = arr // 將數(shù)組的兩個(gè)元素賦值給變量 x 和 y
console.log(x)
console.log(y)
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
var arr = [12, 13];
var x = arr[0], y = arr[1]; // 將數(shù)組的兩個(gè)元素賦值給變量 x 和 y
console.log(x);
console.log(y);
輸出結(jié)果為:
12
13
4、數(shù)組迭代
我們可以使用 for 語(yǔ)句來(lái)循環(huán)輸出數(shù)組的各個(gè)元素:
TypeScript
var j:any;
var nums:number[] = [1001,1002,1003,1004]
for(j in nums) {
console.log(nums[j])
}
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
var j;
var nums = [1001, 1002, 1003, 1004];
for (j in nums) {
console.log(nums[j]);
}
輸出結(jié)果為:
1001
1002
1003
1004
5、多維數(shù)組
一個(gè)數(shù)組的元素可以是另外一個(gè)數(shù)組,這樣就構(gòu)成了多維數(shù)組(Multi-dimensional Array)。
最簡(jiǎn)單的多維數(shù)組是二維數(shù)組,定義方式如下:
var arr_name:datatype[][]=[ [val1,val2,val3],[v1,v2,v3] ]
實(shí)例
定義一個(gè)二維數(shù)組,每一個(gè)維度的數(shù)組有三個(gè)元素。
TypeScript
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])
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
var multi = [[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]);
輸出結(jié)果為:
1
2
3
23
24
25
6、數(shù)組在函數(shù)中的使用
作為參數(shù)傳遞給函數(shù)
TypeScript
var sites:string[] = new Array("Google","Runoob","Taobao","Facebook")
function disp(arr_sites:string[]) {
for(var i = 0;i< arr_sites.length;i++) {
console.log(arr_sites[i])
}
}
disp(sites);
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
var sites = new Array("Google", "Runoob", "Taobao", "Facebook");
function disp(arr_sites) {
for (var i = 0; i < arr_sites.length; i++) {
console.log(arr_sites[i]);
}
}
disp(sites);
輸出結(jié)果為:
Google
Runoob
Taobao
Facebook
7、作為函數(shù)的返回值
TypeScript
function disp():string[] {
return new Array("Google", "Runoob", "Taobao", "Facebook");
}
var sites:string[] = disp()
for(var i in sites) {
console.log(sites[i])
}
編譯以上代碼,得到以下 JavaScript 代碼:
JavaScript
function disp() {
return new Array("Google", "Runoob", "Taobao", "Facebook");
}
var sites = disp();
for (var i in sites) {
console.log(sites[i]);
}
輸出結(jié)果為:
Google
Runoob
Taobao
Facebook
8、數(shù)組方法
下表列出了一些常用的數(shù)組方法:
審核編輯 黃宇
-
Array
+關(guān)注
關(guān)注
99文章
19瀏覽量
18962 -
鴻蒙
+關(guān)注
關(guān)注
60文章
2620瀏覽量
44063
發(fā)布評(píng)論請(qǐng)先 登錄
鴻蒙TypeScript入門學(xué)習(xí)第4天:【TS變量聲明】
鴻蒙TypeScript入門學(xué)習(xí)第6天:【條件語(yǔ)句】

鴻蒙TypeScript學(xué)習(xí)第7天:【TypeScript 循環(huán)】

鴻蒙TypeScript 開(kāi)發(fā)學(xué)習(xí)第9天:【TypeScript Number】

鴻蒙TypeScript學(xué)習(xí)第17天:【對(duì)象】

鴻蒙TypeScript學(xué)習(xí)第20天:【模塊】

限時(shí)免費(fèi)領(lǐng)取\LabVIEW機(jī)器視覺(jué)基礎(chǔ)篇—7天入門
【觸覺(jué)智能 Purple Pi OH 開(kāi)發(fā)板體驗(yàn)】二、鴻蒙系統(tǒng)APP應(yīng)用例程學(xué)習(xí)HDC使用學(xué)習(xí)
?數(shù)組和C++ std::array詳解

鴻蒙TypeScript入門學(xué)習(xí)第2天【TypeScript安裝】

鴻蒙TypeScript開(kāi)發(fā)入門學(xué)習(xí)第3天:【TS基礎(chǔ)類型】

鴻蒙TypeScript入門學(xué)習(xí)第8天:【TypeScript 函數(shù)】

鴻蒙TypeScript學(xué)習(xí)21天:【聲明文件】

評(píng)論