TypeScript introdujo un nuevo tipo de datos llamado Tupla. La tupla puede contener dos valores de diferentes tipos de datos.
Considere el siguiente ejemplo de variables de tipo número, cadena y tupla.
Copiar
var empId: number = 1;var empName: string = "Steve"; // Tuple type variable var employee: = ;
En el ejemplo anterior, hemos definido una variable empId
como tipo de número y empName
como tipo de cadena con valores. Aquí, declaramos y asignamos dos variables a id y nombre de un empleado. Lo mismo se puede lograr usando una sola variable de tipo tupla. employee
es la variable de tipo tupla con dos valores de tipo número y cadena. Por lo tanto, se elimina la necesidad de declarar dos variables diferentes.
Una variable de tipo tupla puede incluir varios tipos de datos, como se muestra a continuación.
Copiar
var employee: = ;var person: = ;var user: ;// declare tuple variableuser = ;// initialize tuple variable
puede declarar una matriz de tupla también.
Copiar
var employee: ;employee = , , ];
TypeScript genera una matriz en JavaScript para la variable tupla. Por ejemplo, var employee: =
se compilará como var employee =
en JavaScript.
Acceder a elementos de tupla
Podemos acceder a elementos de tupla usando index, de la misma manera que un array. Un índice comienza desde cero.
Copiar
var employee: = ;employee; // returns 1employee; // returns "Steve"
Agregar elementos a la tupla
Puede agregar nuevos elementos a una tupla utilizando el método push ().
Copiar
var employee: = ;employee.push(2, "Bill"); console.log(employee); //Output:
Esto está permitido porque estamos agregando el número y la cadena de valores de la tupla y son válidos para el employee
tupla.
Ahora, intentemos agregar un valor booleano a la tupla.
employee.push(true)
El ejemplo anterior arrojará el siguiente error:
test.ts(4,15): error TS2345: Argument of type 'true' is not assignable to parameter of type 'number | string'.
Obtenemos un error que dice que agregar un valor booleano a una tupla de tipo ‘number | string’ no está permitido. Por lo tanto, una tupla declarada como ‘number | string’ solo puede almacenar valores numéricos y de cadena.
La tupla es como un array. Por lo tanto, podemos usar métodos de matriz en tupla como pop (), concat (), etc.
Copiar
var employee: = ;// retrieving value by index and performing an operation employee = employee.concat(" Jobs"); console.log(employee); //Output: