JavaScript 2015 (I). Introducción.

¿Qué es JavaScript 2015? Bueno. Empecemos por el principio. Parto de la base de que eres desarrollador web (ya sea profesional o aficionado) y que estás familiarizado con JavaScript. Seguro que estás harto de usarlo. Puede que sólo lo uses a nivel básico, o que seas un avezado escritor de códigos de script del lado del cliente. Da igual. La especificación de JavaScript ha permanecido (casi) inamovible durante más de cinco años. Eso, en este sector, es inconcebible. Las razones por las que esto ha ocurrido así son, básicamente, tres: En su origen, la versión 5 de JavaScript era mucho más potente y flexible de lo que la mayoría de la gente cree. Por esta razón, ya se sabía que duraría mucho tiempo. Las carencias que presentaba el lenguaje en sí eran suplidas, de largo, con el uso de frameworks que han ido apareciendo en el mercado, como Angular, MooTools o jQuery. Ciertos navegadores (y todos sabemos de cual hablo, ¿verdad, señor Gates?) han marcado siempre una tendencia involucionista al negarse a adaptar su operativa a las normailizaciones y especificaciones aprobadas por el consorcio. Dada la cuota de mercado que este navegador llegó a tener en su momento, era muy …

Seguir leyendo

JavaScript 2015 (II). Constantes y variables.

En este artículo vamos a introducir dos conceptos. Por una parte, la creación de constantes, algo que, hasta ahora, estaba vedado en JavaScript. Por otro lado veremos que las variables pueden emplearse de una forma constreñida al contexto de un bloque de código. Son novedades ligeras, pero que nos dan algunas posibilidades que, hasta esta versión, se encontraban reservadas a otros lenguajes. Además, nos servirán como introducción para los siguientes artículos.

JavaScript 2015 (III). Interpolación y mapas.

En este artículo vamos a conocer dos nuevas aportaciones del estándar 2015 de JavaScript para el manejo de datos. Se trata de las interpolaciones y los mapas. Ambos se refieren al manejo de objetos y de arreglos, es decir, variables complejas o colecciones de variables. Estas técnicas (o sus equivalentes similares) existen, desde hace mucho tiempo, en otros lenguajes como PHP o Java. Sin embargo, en JavaScript se echaban en falta. La nueva normalización llena completamente este vacío, si bien emplea una sintaxis peculiar. No sabemos si, en posteriores versiones del lenguaje, la sintaxis se aproximará más a la de otros lenguajes, o se mantendrá como propia de Javascript (aunque todo apunta a esto último). Nosotros vamos a conocer lo que tenemos ahora y si, en el futuro evoluciona, nos adaptaremos (aunque, insisto, la tendencia parece ser a mantener la notación actual).

JavaScript 2015 (IV). Conjuntos y desestructuración.

Como hemos venido viendo en los artículos anteriores, en JavaScript 6 existen muchas alternativas a los arreglos. Hasta la llegada de esta versión, contábamos con las matrices tradicionales de toda la vida, y para de contar. En JS6 contamos con otras opciones que nos permiten mayor flexibilidad a la hora de tratar con datos. En este artículo vamos a conocer los conjuntos y las desestructuraciones. A pesar de sus rimbombantes nombres, verás que son dos técnicas extremadamente simples de manejar, heredadas, como las anteriores, de otros lenguajes de alto nivel. Con este artículo dejaremos sentadas las bases para seguir profundizando en el conocimiento de la nueva versión de JavaScript.

JavaScript 2015 (V). Bucles for…of.

Cuando hablamos de bucles en JavaScript estamos acostumbrados a pensar en los tradicionales. bucles for de toda la vida (sin contar los while). El que haya indagado un poco más, sabes que existen más sintaxis de for que la que usamos siempre. Tienes algunos ejemplos interesantes en este artículo. La nueva especificación nos trae una nueva sintaxis de for para iterar sobre arreglos. Es una forma simpleficada de recorrer los elementos de una matriz, haciendo, con cada uno de ellos, lo que consideremos oportuno.

JavaScript 2015 (VI). Generadores.

Cuando estamos recorriendo un bucle nos encontramos, en ocasiones, con que, dada una condición o evento determinado, es necesario interrumpir la ejecución de dicho bucle, retornando el control al proceso JavaScript que lo invocó. Al mismo tiempo, es necesario conservar el valor de una variable (o de más de una) de tal modo que, cuando vuelva a invocarse el bucle, no se inicialice de nuevo, sino que conserve el valor que tenía. Esta es una necesidad que se nos ha dado a todos alguna vez y, dado que, hasta ahora, no era posible hacer esto, hemos obviado dicha necesidad, buscando soluciones alternativas, en ocasiones muy enrevesadas, para lograr el resultado deseado. Por primera vez, JavaScript nos ofrece la posibilidad de ejecutar un bucle, interrumpiendolo cuando sea necesario, y manteniendo los valores adquiridos en el mismo por una o más variables. Estas herramientas se conocen con el nombre de Generadores.

JavaScript 2015 (VII). Funciones de usuario.

Las funciones de usuario son imprescindibles en casi cualquier código javaScript y, hasta ahora, en nuestros desarrollos, han sido una inestimable aportación. JS6 añade nuevas funcionalidades, que otros lenguajes de alto nivel ya implementan desde hace años, permitiéndonos muchas más posibilidades. En este artículo vamos a conocer las características que el nuevo estándar nos ofrece, para que podamos incluirlas en nuestros códigos.

JavaScript 2015 (VIII). POO en JS6.

La programación orientada a objetos siempre ha sido una asignatura pendiente en JavaScript. Si bien es cierto que este leguaje incorpora, desde hace mucho tiempo, clases propias como Array, Date, JSON o Math, por ejemplo, con sus propiedades o métodos, carecíamos de la posibilidad de crear nuestras propias clases y utilizar una sintaxis específica de POO como tenemos en otros lenguajes. Sí. Es cierto que podemos crear arreglos de variables y gestionarlas, hasta cierto punto, como si fueran propiedades de un objeto JS6 soluciona esa carencia, permitiéndonos crear clases, emplear herencia, y disponer de las funcionalidades de la POO. Es cierto que el mecanismo proporcionado aún podría mejorarse y, seguramente, evolucionará en un futuro próximo. No obstante, tal cómo está ya constituye un paso de gigante que no podemos dejar de analizar en esta serie de artículos. Este artículo está orientado a la POO en JavaScript 6. No es un manual de POO y, aunque repasamos algunos conceptos generales, entiendo que estás familiarizado con las generalidades de la POO, aunque la hayas usado en otros lenguajes.

JavaScript 2015 (IX). Métodos nativos.

La nueva normalización de JavaScript incorpora algunos métodos que están destinados a microtareas muy específicas. Son muy pocos, y muy fáciles de aprender a manejar, por lo que los vamos a agrupar todos en este artículo. Ten cuidado con la documentación que se encuentra en algunos sitios de internet. Verás que te hablan de las clases Math, Number y String. Estas no son, en modo alguno, nuevas. Existen desde hace mucho tiempo, aunque no siempre les hemos sacado el partido posible. Por otro lado, ten en cuenta que estos operdadores están concebidos para simplificar las microtareas a que se refieren, aunque, antes de JS6 ya existía el modo de realizarlas, aunque fuera más complejo. En todo caso, nos ahorrarán algo de trabajo.

JavaScript 2015 (y X). Promesas.

Javascript 2015 cuenta con una nueva clase llamada Promise. Es un bonito nombre, que suena interesante, y que, como vamos a ver en seguida, aporta una funcionalidad interesante. Con esto terminamos esta serie sobre las novedades de JavaScript en su versión de 2015. Como hemos visto, salvo algunos deshonrosos ejemplos, la mayoría son útiles y nos aportan facilidades que se echaban de menos. Esperemos que, en sucesivas revisiones, subsanen las carencias o defectos que nosotros, los miembros de la comunidad de desarrolladores, aún hemos encontrado. Al menos, estas promesas sí se cumplen. No como las de algunos jefes, o las de aquella vecina que nos usaba de pagafantas en el instituto. 😆