Javascript. Pequeñas recetas para mejorar (III)
Recopilatorio de consejos y recetas para incrementar tus habilidades desarrollando con Javascript
Continuando con la recopilación de las recetas sobre Javascript que publico periódicamente en Linkedin los miércoles, aquí os dejo las que he subido estos dos últimos meses. Así, si os perdisteis alguna o simplemente queréis seguir refrescando vuestros conocimientos podéis tenerlas a mano.
A mí la verdad es que escribirlas me sirve tanto para seguir reforzando mis conocimientos de Javascript como para estar al tanto de las principales novedades que van apareciendo.
Recordad que al final del artículo tenéis los enlaces a los artículos anteriores de esta serie de publicaciones.
Así que, como siempre, ¡vamos a ello!
Closures
Las “closures” de Javascript siempre son un quebradero de cabeza cuando comenzamos a progamar en este lenguaje, así que con esta receta podréis reforzar los principales conceptos sobre su funcionamiento.
Además, si queréis profundizar podéis también ver el vídeo que publiqué en mi canal de Youtube hablando del mismo tema:

CSS Variables
Vale vale. Ya se que se me ha colado una receta de CSS, pero me resultó tan interesante la mejora que se introdujo en este lenguaje para permitirnos declarar variables que no la quería pasar por alto.
En esta receta podréis ver el funcionamiento básico de las variables en CSS.

El objeto Date en Javascript
Trabajar con fechas en Javascript require tener bien claro cómo funciona el objeto Date, ya que éste tiene alguna que otra “peculiaridad”. De hecho por eso existen numerosas librerías de terceros como Date-FNS (mi favorita) o Moment JS para simplificarnos esta tarea.
En esta receta podéis repasar las distintas formas de crear objetos Date y en qué se diferencian:

Function declaration vs Function Expression
En Javascript existen diversas formas de “declarar” una función. De hecho muchas veces recurrimos a expresar una función para posteriormente asignarla a una variable.
Esta receta tiene como objetivo dejar clara la diferencia entre la declaración de funciones y la expresión de funciones en Javascript.

Funciones generadoras
Desde ES6 tenemos la posibilidad de crear funciones generadoras, las cuales nos permiten detener su ejecución y reanudarla más adelante, permitiéndonos devolver varios variables.
Esta receta tiene como objetivo explicar su funcionamiento:

Inmutabilidad de objetos (Parte 1)
Con el fin de entender la forma en que podemos introducir la inmutabilidad en nuestros objetos cuando programamos en Javascript lo primero de esto es entender qué son los “property descriptors”.
En esta receta veréis los 3 descriptores con los que cuentan las propiedades de los objetos que creamos en Javascript y para qué sirve cada uno de ellos.

Inmutabilidad de objetos (Parte 2)
Una vez que sabemos cómo funcionan los “property descriptors” de los objetos de Javascript, es momento de ver cómo funcionan los métodos preventExtensions
, seal
y freeze
de la clase Object
de Javascript.
Estos 3 métodos nos permitirán “jugar” con la mutabilidad de nuestros objetos por lo que es muy interesante saber su funcionamiento:

Intl API
La especificación de Javascript cuenta con su propia API de traducción: Intl. Esta API nos va a simplificar enormemente la traducción de fechas, monedas y cantidades a los diferentes idiomas que soporte nuestra aplicación.
En esta receta podéis ver algunos de sus usos:

Iteradores
Además de los generadores, ES6 la posibilidad de definir iteradores propios para nuestros objetos por medio del Symbol Symbol.iterator
.
En esta receta podéis ver la forma en que podemos implementar nuestro propio iterador para recorrer una lista de películas:

Conclusiones
Como veis, Javascript posee multitud de trucos sintácticos para hacernos mucho más agradable la experiencia de desarrollar en este lenguaje. Por eso siempre respondo a quien me pregunta acerca de qué librería o framework aprender:
¿Sabes bien Javascript?
Creo que conocer el lenguaje es fundamental antes de pasar a trabajar sobre una capa por encima, de ahí que prepare estas mini recetas cada miércoles para reforzar mis conocimientos.
Artículos anteriores
¿Quieres recibir más artículos como este?
Si te ha gustado este artículo te animo a que te suscribas a la newsletter que envío cada domingo con publicaciones similares a esta y más contenido recomendado: 👇👇👇