Introducción a la nueva versión de Javascript ES6 o ES-2015
@MedellinJS del 15 de julio de 2015
Por Johann Echavarría @abrupto
¿Qué es ECMA?
Ecma International fue fundada en ¡1961!
(European Computer Manufacturers Association)
El estándar Se llama ECMA-262
Hay también estándar ISO 16262:2011
ECMAScript es el nombre oficial del lenguaje.
Javascript es un nombre desafortunado.
- ActionScript Adobe
- JScript.NET Microsoft
- ECMAScript 1 (Junio 1997)
- ECMAScript 2 (Junio 1998)
- ECMAScript 3 (Diciembre 1999)
¡PELEA DE NERDS EN ESTE PUNTO!
- ECMAScript 3.1 por Microsoft y Yahoo.
- ECMAScript 4 (abandonada en Julio de 2008) diseñada por Adobe, Mozilla, Opera, and Google era una actualización masiva.
Pelea entre estos dos últimos que se resolvió en julio 2008. - ECMAScript 5 (ECMAScript 3.1 principalmente) Diciembre 2009.
ECMAScript 6 (ECMAScript 2015 ) junio 2015 (En 2011 se empezó a llamar Harmony).
ECMAScript 7 (ECMAScript 2016) ??
A partir de ahora se planea liberar una versión cada año con las características que estén listas en el momento.
¿Cómo migrar?
¡Ya estás migrado!
"One Javascript" es el lema.
El PDF de ECMAScript 5.1 tiene 245 páginas, contra 593 páginas de la versión 6
TC39 (Ecma Technical Committee 39)
Buscar en Twitter #TC39
Pasos para que propuesta se vuelva estándar:
1. Borrador
2. Propuesta.
TC39 está de acuerdo en que es una característica importante y se promueve el estado oficial como propuesta. No garantiza que se vuelva estándar pero incrementa sus chances. La fecha de corte de ES6 fue mayo de 2011.
3. Implementación. Las características propuestas deben ser implementadas idealmente en dos motores de Javascript (V8, Spidermonkey, Chakra, Nitro) para recibir retroalimentación de la comunidad (Twitter) y darle más forma a la propuesta.
4. Estándar.
¿Como usarlo ahora?
Opción 1: Esperar.
Firefox vs Chrome vs IE11 en julio de 2015
http://ruanyf.github.io/es-checker/
Opción 2 Compilar ES6 a ES5
Typescript
http://www.typescriptlang.org/
Babel
https://babeljs.io/
Traceur-compiler
https://github.com/google/traceur-compiler
Enlaces de interés:
Texto oficial:
http://www.ecma-international.org/publications/standards/Ecma-262.htm
Libros:
https://leanpub.com/understandinges6/read
Understanding ECMAScript 6
http://exploringjs.com/
Exploring ES6: Upgrade to the next version of JavaScript
Chequear compatibilidad de navegador:
http://ruanyf.github.io/es-checker/
Tabla de compatibilidad ES6
http://kangax.github.io/compat-table/es6/
es6 katas
http://es6katas.org/
es6-equivalents-in-es5
https://github.com/addyosmani/es6-equivalents-in-es5
es6fiddle
http://www.es6fiddle.net/
https://google.github.io/traceur-compiler/demo/repl.html#
https://babeljs.io/repl/
Shims/polyfills
https://github.com/paulmillr/es6-shim/
https://github.com/zloirock/core-js
Recursos de aprendizaje:
https://github.com/addyosmani/es6-tools
https://github.com/ericdouglas/ES6-Learning
Lints
http://eslint.org/
Transpilers
https://github.com/gcollazo/es6-module-transpiler-brunch
Introducción a EcmaScript 6 o EcmaScript 2015
By Johann Paul Echavarria Zapata
Introducción a EcmaScript 6 o EcmaScript 2015
Introducción a EcmaScript 6 o EcmaScript 2015
- 1,919