En TypeScript puedes describir la "forma" exacta que debe tener un objeto:
Esto dice: persona debe tener exactamente nombre (string) y edad (number). Si te falta una propiedad o sobra una, TypeScript avisa:
No todas las propiedades son obligatorias. Usa ? para las opcionales:
Una propiedad opcional puede ser del tipo indicado o undefined.
Si una propiedad no debería cambiar después de crearse, usa readonly:
readonly es como const pero para propiedades de objetos.
Si intentas acceder a una propiedad que no existe, TypeScript te avisa:
En JavaScript, esto devolvería undefined silenciosamente. En TypeScript, el error te avisa antes de que sea un problema.
Los objetos pueden contener otros objetos:
Esto funciona pero se vuelve difícil de leer rápidamente. En la próxima lección veremos cómo los type aliases resuelven este problema.
Imagina que necesitas el mismo tipo de objeto en 5 funciones diferentes. ¿Vas a copiar { nombre: string; edad: number; email: string } cinco veces? Si añades una propiedad, tendrías que cambiarla en 5 lugares.
La solución viene en la siguiente lección: type aliases.
usuario con tipo inline que tenga:
nombre (string)edad (number)email (string)telefono (string, opcional)Tipar objetos es como dibujar un plano antes de construir. TypeScript verifica que tu edificio coincida con el plano.