El sistema de tipos de TypeScript permite crear nuevos tipos utilizando una variedad de operadores. Ahora que sabemos como escribir algunos tipos es tiempo de combinarlos en formas interesantes.
驴C贸mo definir utilizar union en TypeScript?
La primera forma de combinar tipos es utilizando uniones. En una uni贸n los tipos que forman parte de esta se le llaman miembros.
Supongamos que tenemos una funci贸n que imprime el valor de un identificador, este puede ser un n煤mero o un string.
function imprimirId(id: number | string) {
console.log(`El id es ${id}`);
}
imprimirId(1);
imprimirId("abc");
Como vemos en el ejemplo hemos definido un par谩metro id
el cual puede ser number | string
(number o string). Por lo tanto cuando invocamos la funci贸n podemos enviar tanto un tipo como el otro.
驴C贸mo trabajar con uniones?
Supongamos ahora que dentro de nuestra funci贸n deseamos utilizar los m茅todos asociados aid
que puede ser number
o string
. Como cada uno de estos tipos tiene diferentes m茅todos se hace necesario primero hacer una verificaci贸n del tipo para poder interactuar con este.
function imprimirId(id: number | string) {
if (typeof id === "string") {
console.log(`El id es ${(id as string).toUpperCase()}`);
} else {
console.log(`El id es ${(id as number).toFixed(2)}`);
}
}
imprimirId("este_es_mi_id");
imprimirId(100.234234123);
Como podemos ver en el ejemplo anterior hemos actualizado la funci贸n para:
- Cambiar a may煤sculas el id cuando este sea un string.
toUpperCase()
- Reducir el n煤mero de decimales a 2 cuando es un n煤mero.
toFixed(2)