TypeScript Fundamentos y Ejemplos Básicos

TypeScript Microsoft

TypeScript

TypeScript es un lenguaje de programación libre y de código abierto desarrollado por Microsoft. Es un superconjunto de JavaScript, que esencialmente añade tipado estático y objetos basados en clases.

Anders Hejlsberg, diseñador de C#, ha trabajado en el desarrollo de TypeScript.

TypeScript extiende la sintaxis de JavaScript, por tanto cualquier código JavaScript existente debería funcionar sin problemas. Está pensado para grandes proyectos, los cuales a través de un compilador de TypeScript se traduce a código JavaScript original. Permite además trabajar sin problemas con famosas librerías de JavaScript como jQuery, MongoDB, Node.js, y D3.js, Angular por ejemplo esta realizado con TypeScript.

Tiene una sintaxis intuitiva, los navegadores no convertirán TypeScript a Javascript si no que TypeScript cuenta con un Transpiler que convierte el código TypeScript a JavaScript y puedes elegir si usar ES5 ó ES6 recordando que la versión actual que soportan todos los navegadores es ES5.

Instalación

Para instalar TypeScript necesitaremos tener instalado previamente Node.js y npm, si no es el caso puedes revisar el tutorial Cómo instalar nodejs y npm en mac y continuar con la instalación de TypeScript.

Necesitaremos ingresar en nuestra terminal el siguiente comando.

Con esto estaremos listos para usar TypeScript, crea un archivo con extensión “.ts”

Para compilar nuestro archivo:


Tipos de variables y datos

En TypeScript las variables se declaran igual que en Javascript, pero se especifica que tipo de dato es, por ejemplo:

Las variables tienen la palabra reservada var pero el tipo de dato que se va a utilizar ó estará asignado a la variable y se denota como a continuación nombreVariable: tipoDato, a estos tipos de dato se les denomina datos primitivos, y son de tipo:

  • string
  • number
  • boolean

Existe la palabra reservada const que es una nueva forma de declarar variables (introducida en ES6), que es similar a var pero tiene un scope bloqueado ya que su valor no se puede modificar, en caso de que se reasignara un valor causaría un error. De igual manera var también puede usarse como let , de ahora en adelante la usaremos así como mejor práctica.

También se pueden usar template strings que se usan para tener varias lineas y expresiones embebidas, se denotan con (`) , y la expresión dentro del texto por ${ expr }, ejemplo:

Arreglos

Los arreglos en TypeScript se pueden presentar de dos maneras:

nombreVariable: tipoDato[] ó nombreVariable: Array<tipoDato>

De igual manera se pueden combinar los tipos de dato por ejemplo un string y un number .

let arrayMixed: any[] = [2, '5', 3];

Cuando se conoce el orden de los elementos en el arreglo es posible combinarlos también pero necesitas que el arreglo solo acepte su tipo de dato en el orden que están, se le llama tuple.

Enum

Algo bueno que se añade en TypeScript es Enum que es una ayuda para los estandarizar nuestros tipos de datos numéricos de una manera fácil.

Por defecto enum inicia el valor de sus propiedades en “0…” , pero se puede modificar, en el anterior ejemplo Admin sería 0, pero probablemente quiero que sea 1, de igual manera se pueden modificar todos lo demás.

Ahora, si el valor del enum pero no sabemos a que corresponde, podemos ir de un valor numérico a un texto.

Any y Object

Si no sabemos que tipo de dato vamos a recibir, por ejemplo usando librerías de terceros o consumiendo un API podemos hacer uso de any, ó bien si recibimos un Objeto, que trae diferentes tipos de datos.

Interfaces

TypeScript nos permite declarar objetos más complejos ó estructurados, por ejemplo:

Puede no ser necesario todas la propiedades de la interface esto puede depender de la propiedad que se quiera llenar, ejemplo:

Existen otros métodos más avanzados para interfaces en funciones y clases, por el momento vamos a dejar la parte básica.

Classes

Si quieres aprender más sobre TypeScript puedes revisar la documentación en el sitio oficial.


Follow me on Medium or Twitter!, Si te gusto dale clap a la manita para saber que estoy haciendo las cosas bien, y déjame tus comentarios!!!

Comunidad JavaScript

Tips de Javascript, Frameworks, y Desarrollo Web

Javier Ruiz Vázquez

Written by

Frontend Architect, ¬¬! Make you ideas real

Comunidad JavaScript

Tips de Javascript, Frameworks, y Desarrollo Web

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade