TypeScript 元組

2019-01-27 17:30 更新

有時,可能需要存儲各種類型的值的集合。數(shù)組不會達到這個目的.TypeScript為我們提供了一個名為元組(元組)的數(shù)據(jù)類型,有助于實現(xiàn)這一目的。

它代表值的異構(gòu)集合。換句話說,元組允許存儲不同類型的多個字段。元組也可以作為參數(shù)傳遞給函數(shù)。

語法

var tuple_name = [value1,value2,value3,…value n]

示例

var mytuple = [10,"Hello"];

您還可以在打字稿中聲明一個空元組,然后選擇稍后對其進行初始化。

var mytuple = []; 
mytuple[0] = 120 
mytuple[1] = 234

訪問元組中的值

元組值被單獨稱為項目。元組是基于索引的。這意味著可以使用相應(yīng)的數(shù)字索引訪問元組中的項。元組項的索引從零開始并且向上擴展到n-1個(其中?是元組的大?。?。

語法

tuple_name[index]

示例:簡單的元組

var mytuple = [10,"Hello"]; //create a  tuple 
console.log(mytuple[0]) 
console.log(mytuple[1])

在上面的例子中,聲明了元組mytuple。元組分別包含數(shù)字和字符串類型的值。

在編譯時,它會在JavaScript的中生成相同的代碼。

它的輸出如下:

10 
Hello

示例:空的元組

var tup = [] 
tup[0] = 12 
tup[1] = 23 

console.log(tup[0]) 
console.log(tup[1])

在編譯時,它會在JavaScript的中生成相同的代碼。

它的輸出如下:

12 
23 

元組的操作

打字稿中的元組支持各種操作,例如推送新項目,從元組中刪除項目等。

示例

var mytuple = [10,"Hello","World","typeScript"]; 
console.log("Items before push "+mytuple.length)    // returns the tuple size 

mytuple.push(12)                                    // append value to the tuple 
console.log("Items after push "+mytuple.length) 
console.log("Items before pop "+mytuple.length) 
console.log(mytuple.pop()+" popped from the tuple") // removes and returns the last item
  
console.log("Items after pop "+mytuple.length)
  • 推()一個將項附加到元型態(tài)組

  • pop()方法刪除并返回元組中的最后一個值

在編譯時,它會在JavaScript的中生成相同的代碼。

上面的代碼的輸出如下:

Items before push 4 
Items after push 5 
Items before pop 5 
12 popped from the tuple 
Items after pop 4

更新元組

元組是可變的,這意味著你可以更新或更改元組元素的值。

示例

var mytuple = [10,"Hello","World","typeScript"]; //create a  tuple 
console.log("Tuple value at index 0 "+mytuple[0]) 

//update a tuple element 
mytuple[0] = 121     
console.log("Tuple value at index 0 changed to   "+mytuple[0])

在編譯時,它會在JavaScript的中生成相同的代碼。

上面的代碼的輸出如下:

Tuple value at index 0 10 
Tuple value at index 0 changed to 121

解構(gòu)一個元組

解構(gòu)是指打破實體的結(jié)構(gòu)。在元組的上下文中使用時,打字稿支持解構(gòu)。

示例

var a =[10,"hello"] 
var [b,c] = a 
console.log( b )    
console.log( c ) 

在編譯時,它會生成以下的JavaScript代碼:

//Generated by typescript 1.8.10
var a = [10, "hello"];
var b = a[0], c = a[1];
console.log(b);
console.log(c);

它的輸出如下:

10 
hello 
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號