El problema que resuelven los genéricos
Parte de la sección Introducción a TypeScript del Journey de JavaScript de Coddy. Lección 57 de 73.
Imagina que quieres crear una función que simplemente devuelva cualquier valor que le pases: una función de "identidad". En JavaScript normal, podrías escribir algo como esto:
function identity(arg: any): any {
return arg;
}Aunque esta función funciona, el uso de any crea un problema significativo: pierdes toda la seguridad de tipos. Cuando llamas a identity("hello"), TypeScript no puede decirte que el resultado es una cadena. Solo sabe que el resultado es any, lo que significa que pierdes el autocompletado, la comprobación de tipos y todos los beneficios que proporciona TypeScript.
Pruébalo tú mismo
Esta lección no incluye un desafío de código.
Esta 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 Tuplas6Tipado de Objetos e Interfaces
Anotaciones de tipo de objeto en líneaAlias de tipo para objetosIntroducción a las interfacesInterfaces vs. Alias de tipoPropiedades opcionales y ReadonlyExtensión de interfaces y tiposAgregar métodos a interfacesRepaso: Definición de estructuras de objetos9Genéricos: Un primer vistazo
El problema que resuelven los genéricosCreación de una función de identidad genéricaUso de una función genéricaArrays genéricosInterfaces genéricasRepaso: Práctica de funciones genéricasPractica por tu cuenta: Compilador de JavaScript online