📅  最后修改于: 2020-10-19 03:53:50             🧑  作者: Mango
有时,可能需要存储各种类型的值的集合。阵列将无法达到此目的。 TypeScript为我们提供了一种称为元组的数据类型,可帮助实现此目的。
它代表值的异构集合。换句话说,元组可以存储不同类型的多个字段。元组也可以作为参数传递给函数。
var tuple_name = [value1,value2,value3,…value n]
var mytuple = [10,"Hello"];
您还可以在Typescript中声明一个空元组,然后选择稍后对其进行初始化。
var mytuple = [];
mytuple[0] = 120
mytuple[1] = 234
元组值分别称为项。元组基于索引。这意味着可以使用元组中的相应数字索引来访问它们。元组项目的索引从零开始,一直扩展到n-1(其中n是元组的大小)。
tuple_name[index]
var mytuple = [10,"Hello"]; //create a tuple
console.log(mytuple[0])
console.log(mytuple[1])
在上面的示例中,声明了一个元组mytuple 。元组分别包含数字和字符串类型的值。
编译时,它将在JavaScript中生成相同的代码。
其输出如下-
10
Hello
var tup = []
tup[0] = 12
tup[1] = 23
console.log(tup[0])
console.log(tup[1])
编译时,它将在JavaScript中生成相同的代码。
其输出如下-
12
23
TypeScript中的元组支持各种操作,例如推送新项目,从元组中删除项目等。
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)
push()将一个项目附加到元组
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
解构是指破坏实体的结构。在元组的上下文中使用时,TypeScript支持解构。
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