Enums heterogéneos
Parte de la sección Introducción a TypeScript del Journey de JavaScript de Coddy. Lección 55 de 73.
TypeScript también admite enumeraciones heterogéneas: enumeraciones que contienen una combinación de miembros de tipo cadena y numéricos dentro de la misma declaración.
Así es como puedes crear una enumeración heterogénea:
enum MixedEnum {
No = 0,
Yes = "YES",
Maybe = 1
}En este ejemplo, No y Maybe son miembros numéricos, mientras que Yes es un miembro de cadena. TypeScript permite esta flexibilidad, aunque es importante señalar que los enumerados heterogéneos rara vez se utilizan en la práctica.
Desafío
FácilCrea una enumeración heterogénea llamada ResponseCode que mezcle valores de cadena y numéricos:
Successinicializado con200Errorinicializado con"ERROR"NotFoundinicializado con404Timeoutinicializado con"TIMEOUT"
Crea una función llamada handleResponse que acepte un parámetro:
codede tipoResponseCode
La función debe:
- Comprobar el código de respuesta e imprimir mensajes diferentes según el valor
- Si el código es
ResponseCode.Success, imprimir"Request successful" - Si el código es
ResponseCode.Error, imprimir"General error occurred" - Si el código es
ResponseCode.NotFound, imprimir"Resource not found" - Si el código es
ResponseCode.Timeout, imprimir"Request timed out" - Tener un tipo de retorno
void
Crea cuatro variables para demostrar los valores de la enumeración:
successCodede tipoResponseCodey asígnaleResponseCode.SuccesserrorCodede tipoResponseCodey asígnaleResponseCode.ErrornotFoundCodede tipoResponseCodey asígnaleResponseCode.NotFoundtimeoutCodede tipoResponseCodey asígnaleResponseCode.Timeout
Imprime las siguientes salidas:
- Imprime el valor de
successCode - Imprime el valor de
errorCode - Imprime el valor de
notFoundCode - Imprime el valor de
timeoutCode - Llama a
handleResponseconResponseCode.Success - Llama a
handleResponseconerrorCode - Llama a
handleResponsecon el valor numérico404
Pruébalo tú mismo
// TODO: Escribe tu código aquí
// Crea el enum ResponseCode
// Crea la función handleResponse
// Crea las variables de demostración
// Imprime las salidas requeridasEsta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Introducción a TypeScript
1Primeros pasos con TS
¿Qué es TypeScript?¿Por qué usar TypeScript?Tu primer código en TypeScriptProceso de compilación y erroresResumen: Introducción a TS4Trabajando con funciones
Tipado de parámetros y valores de retornoTipado de funciones de flechaEl tipo de retorno 'void'Parámetros opcionales con '?'Valores de parámetros por defectoTipado de parámetros restDefinición de tipos de funcionesRepaso: Construcción de funciones tipadas2Tipos principales
Tipos básicos: str, num, booleanEl tipo 'any': Vía de escapeEl tipo 'unknown'Trabajando con 'null' y 'undef'Inferencia de tipos en acciónAnotaciones de tipo explícitasResumen: Práctica de tipos principales5Tipos: Alias, Uniones e Intersecciones
Alias de tipos para primitivosTipos de unión ('|')Trabajando con tipos de uniónTipos literalesTipos de intersección ('&')Combinando alias de tiposRepaso: Combinaciones de tipos avanzadas3Estructura de datos: Arrays y Tuplas
Arrays tipadosModificador 'readonly' para Arrays¿Qué es una Tupla?Declaración y acceso a TuplasDesestructuración de TuplasTuplas ReadonlyArrays tipados multidimensionalesOperador Spread con ArraysResumen: Arrays y TuplasPractica por tu cuenta: Compilador de JavaScript online