0Pricing
TypeScript Academy · Lección

Alias de tipos complejos

Cree nombres de tipo reutilizables con la palabra clave type.

Alias de tipos complejos es una lección gratuita de TypeScript Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de TypeScript Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de TypeScript Academy incluye 4 lecciones en total.

Introducción

Los alias de tipos asignan un nombre a cualquier expresión de tipo: primitivos, uniones, intersecciones, tuplas u objetos. Hacen que los tipos complejos sean reutilizables y legibles.

La palabra clave type

Cree un alias de tipo con `type Name = TypeExpression`. Se puede usar en cualquier lugar en el que se usaría el tipo original.
type UserId = number;
type UserName = string;
type Point = { x: number; y: number };

Alias de tipos de unión

Asigne un nombre a los tipos de unión complejos para que las signaturas de las funciones sean más legibles.
type StringOrNumber = string | number;
function format(val: StringOrNumber): string {
  return String(val);
}

Alias de tipos de objeto

Los alias de tipos de objeto funcionan igual que las interfaces para describir formas de objetos.
type Product = {
  id: number;
  name: string;
  price: number;
};
const p: Product = { id: 1, name: 'Widget', price: 9.99 };

Alias de tipos de tupla

Asigne un nombre a los patrones de tupla habituales para no repetir su estructura en todas partes.
type Coordinate = [number, number];
type RGB = [number, number, number];
const pos: Coordinate = [10, 20];

Alias de tipos de función

Asigne un nombre a las signaturas de tipos de función para mantener limpias las listas de parámetros.
type Comparator<T> = (a: T, b: T) => number;
const numSort: Comparator<number> = (a, b) => a - b;

Los alias de tipos admiten genéricos

Al igual que las interfaces, los alias de tipos admiten parámetros de tipo genéricos.
type Maybe<T> = T | null | undefined;
type Pair<A, B> = { first: A; second: B };

Alias de tipos autorreferenciales

Los alias de tipos pueden hacer referencia a sí mismos para estructuras de datos recursivas, como árboles y listas enlazadas.
type TreeNode = {
  value: number;
  left?: TreeNode;
  right?: TreeNode;
};

Los alias de tipos no se pueden volver a abrir

A diferencia de las interfaces, los alias de tipo no pueden ampliarse con declaraciones adicionales después de su definición. Son inmutables.
// Interface can be merged (declaration merging):
interface A { x: number; }
interface A { y: number; } // OK — A now has x and y

// Type alias cannot:
type B = { x: number };
// type B = { y: number }; // Error: duplicate identifier

Unión discriminada con alias de tipo

Los alias de tipo son excelentes para las uniones discriminadas, un patrón que combina tipos unión con una propiedad literal compartida.
type Success = { kind: 'success'; data: string };
type Failure = { kind: 'failure'; error: Error };
type Result = Success | Failure;

Cuándo preferir type sobre interface

Use `type` para uniones, tuplas, firmas de funciones y cuando necesite crear tipos calculados complejos. Use `interface` para estructuras de objetos que puedan ampliarse o implementarse.

Comprobación rápida

¿Qué característica admite `interface` que los alias de `type` NO admiten?

Resumen

Los alias de tipo asignan un nombre a cualquier expresión de tipo, incluidas uniones, tuplas, objetos y funciones. Admiten genéricos y recursividad. A diferencia de las interfaces, no pueden volver a abrirse después de su definición.

Preguntas frecuentes

¿La lección «Alias de tipos complejos» es gratis?

Sí — el texto completo de «Alias de tipos complejos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de TypeScript Academy, actualiza a CoddyKit PRO. El curso de TypeScript Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Alias de tipos complejos»?

Cree nombres de tipo reutilizables con la palabra clave type. Practicas TypeScript Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar TypeScript Academy?

No se requiere experiencia previa. TypeScript Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Alias de tipos complejos»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de TypeScript Academy?

Sí. Cada lección de TypeScript Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Definición de estructuras de objetos con interfaces
  2. Alias de tipos complejos
  3. Extensión y combinación de interfaces
  4. Interface frente a Type: cuándo usar cada uno
← Volver a TypeScript Academy