« Back
in javascript es2016 ECMAScript es7 read.
ECMAScript 2016 Features (ES7)

ECMAScript 2016 Features (ES7).

Hace poco en Twitter, pregunté sobre qué tema debería escribir mi siguiente post...

La verdad es que el resultado me sorprendió, ya que pensaba continuar con la serie de Angular 2 con el siguiente paso, el nuevo Router de Angular 2.

Sin embargo, no puedo hacer oídos sordos a los resultados así que... allá vamos!

Como seguramente ya sabréis, desde la adopción del es6, las próximas versiones del estándar serán anuales, y nombradas según el año en el que fueron aprobadas, así pues, el nombre oficial del conocido es6 en realidad es ES2015, y es por eso que en este post nos referimos al próximo estándar (el de este año) con el nombre de ES2016, en lugar de es7.

Decepción

Ya que el último estándar (ES2015) supuso la revolución más grande en JavaScript desde que se concibió, la verdad es que esperaba mucho más del próximo estándar, que sólo introduce 2 novedades.

Eso sí, también hay que tener en cuenta que el ES2015 tardó 5 años en aprobarse, y nuestro próximo estándar afortunadamente será aprobado en el plazo de 1 año desde el anterior. De esa manera será mucho más gradual la evolución de JavaScript e imagino que también dará más tiempo a los navegadores para que implementen los nuevos estándares.

Pero sin duda mi gran decepción ha sido que cosas que tanto anhelaba como los decoradores y el async/await no hayan llegado con esta versión del estándar... habrá que esperar!

Bueno, pues vamos al lío!

Función includes()

Personalmente, tengo que decir que me encanta esta feature y que ojalá la hubieran incluido antes!

badum tzzz!

// Array.prototype.includes()
[1, 2, 3].includes(2);     // true
[1, 2, 3].includes(4);     // false

// String.prototype.includes()
const str= 'Los gatos son seres superiores';  
str.includes('gato');  // true  
str.includes('perro'); // false  

Esto pone fin al horroso array.indexOf(x) !=== -1, ya era hora!

Operador de exponenciación (**)

La verdad es que me parece un buen añadido, y no sé como JavaScript ha tardado tanto en incorporarlo cuando lenguajes como Python lo tienen desde hace eones...

2 ** 3 // 8  
3 ** 2 // 9  
3 ** 2.5 // 15.588457268119896  
10 ** -1 // 0.1  
NaN ** 2 // NaN  

Próximamente

Bueno, viendo los resultados de la encuesta, seguro que ya eres capaz de adivinar cuál será mi siguiente post, verdad? ;) Eso es! El siguiente post que haga hablará del esperado servicio HTTP en Angular 2. Si te gustaría que hablara de cualquier otro tema, no dudes en dejar abajo tu comentario. ^_^


Referencias

comments powered by Disqus