Lección 15 / 20

Genéricos (<T>)

En esta lección escribirás una función que funciona con cualquier tipo sin perder la información de cuál es.

La T entre ángulos es un parámetro de tipo: un hueco que se rellena al llamar. firstItem<number>([10, 20]) hace que T sea number, y por tanto el valor devuelto también lo es.

El código de ejemplo usa la misma función con un array de números y otro de textos, y en cada caso el tipo del resultado es el correcto. Normalmente ni siquiera hace falta escribir <number>: TypeScript lo deduce del argumento.

La alternativa perezosa es usar any, que también «funciona» pero tira toda la información de tipo. Los genéricos existen precisamente para ser flexibles sin renunciar a los tipos.

En proyectos reales, los genéricos están por todas partes aunque no los escribas: Array<T>, Promise<T> y las funciones de las librerías son genéricas. Entenderlos hace que dejen de parecer magia.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar TypeScript directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

Espacio publicitario (banner)
Espacio publicitario (en el artículo)