JavaScript es un lenguaje increíblemente flexible. Puedes sumar un número con un string, llamar a una función que no existe, o acceder a una propiedad de undefined... y JavaScript no te dirá nada hasta que el código explote en producción.
El código se ejecuta sin quejas. El resultado es NaN. Y si esto pasa en una app real, el usuario ve un precio de "NaN€" en su carrito de compras. No es ideal.
En 2012, Microsoft tenía exactamente este problema. Sus aplicaciones web crecían en complejidad y los bugs por tipos incorrectos se multiplicaban. Un ingeniero llamado Anders Hejlsberg (el mismo creador de C#) propuso una solución: ¿y si JavaScript pudiera avisarte de los errores ANTES de ejecutar el código?
Así nació TypeScript — un superset de JavaScript que añade un sistema de tipos estático.
Significa que todo código JavaScript válido es código TypeScript válido. TypeScript es JavaScript + tipos. No reemplaza a JavaScript, lo mejora.
La diferencia es esa anotación : string. Le dice a TypeScript: "esta variable solo puede contener strings". Si intentas asignarle un número, TypeScript te avisa antes de ejecutar nada.
La magia de TypeScript es que detecta errores en tiempo de compilación, no en tiempo de ejecución:
TypeScript te avisa mientras escribes el código, en tu editor. No necesitas ejecutar nada para ver el error. Es como tener un compañero de programación que revisa tu código en tiempo real.
Los navegadores y Node.js no entienden TypeScript directamente. TypeScript se transpila (convierte) a JavaScript normal antes de ejecutarse:
Los tipos desaparecen en el proceso. Son solo una herramienta de desarrollo — no añaden peso ni complejidad al código final.
Prácticamente toda la industria:
No es una moda. TypeScript es el estándar de la industria para proyectos JavaScript serios.
Mira el editor a tu derecha. Tienes una variable mensaje sin tipo anotado.
: string a la variable mensajeconsole.logEs tu primer paso en TypeScript: decirle al código qué tipo de dato esperas.
Acabas de dar tu primer paso en TypeScript. A partir de aquí, tus programas tendrán una red de seguridad que atrapa errores antes de que lleguen a tus usuarios.