TypeScript - 元组

有时,可能需要存储各种类型的值集合.数组不会用于此目的. TypeScript为我们提供了一个名为tuple的数据类型,它有助于实现这一目的.

它代表了一个异构的值集合.换句话说,元组允许存储不同类型的多个字段.元组也可以作为参数传递给函数.

语法

 
 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"];//创建一个元组
 console.log(mytuple [0])
 console.log(mytuple [1])$ b $ b

In上面的例子中,声明了一个元组 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

更新元组

元组是可变的w这意味着你可以更新或更改元组元素的值.

示例

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