Capítulo 6. Matrices
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Matrices y tuplas
Uno flexible y otro fijo
Elige tu aventura
Las matrices de JavaScript son tremendamente flexibles y pueden contener cualquier mezcla de valores en su interior:
const
elements
=
[
true
,
null
,
undefined
,
42
];
elements
.
push
(
"even"
,
[
"more"
]);
// Value of elements: [true, null, undefined, 42, "even", ["more"]]
En la mayoría de los casos, sin embargo, las matrices individuales de JavaScript están pensadas para contener sólo un tipo específico de valor. Añadir valores de un tipo diferente puede resultar confuso para los lectores o, peor aún, ser el resultado de un error que podría causar problemas en el programa.
TypeScript respeta las buenas prácticas de limitarse a un tipo de datos por matriz recordando qué tipo de datos hay inicialmente dentro de una matriz, y permitiendo que la matriz opere sólo con ese tipo de datos.
En este ejemplo, TypeScript sabe que la matriz warriors
contiene inicialmente valores de tipo string
, por lo que, aunque se permite añadir más valores de tipo string
, no se permite añadir ningún otro tipo de datos:
const
warriors
=
[
"Artemisia"
,
"Boudica"
];
// Ok: "Zenobia" is a string
warriors
.
push
(
"Zenobia"
);
warriors
.
push
(
true
);
// ~~~~
// Argument of type 'boolean' is not assignable to parameter of type 'string'.
Puedes pensar en la inferencia de TypeScript del tipo de una matriz a partir de sus miembros iniciales ...
Get Aprender TypeScript now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.