Jose Ignacio Andrés bio photo

Jose Ignacio Andrés

CTO y full stack developer

Email Twitter LinkedIn Instagram Github Stackoverflow Last.fm

Parece que ya tenemos la versión definitiva de como se trabajará con módulos en ECMAScript 6. Según cuenta Axel Rauschmayer se ha buscado lo mejor de los dos sistemas que se usan actualmente:

El resultado es que nos acostumbraremos a ver cosas como estas:

//------ lib.js ------
export const sqrt = Math.sqrt;
export function square(x) {
    return x * x;
}
export function diag(x, y) {
    return sqrt(square(x) + square(y));
}
import { square, diag } from 'lib';
console.log(square(11)); // 121
console.log(diag(4, 3)); // 5

Además de esta forma explícita de trabajar con módulos dispondremos de una API para la carga de estos:

System.import(
    ['module1', 'module2'],
    function (module1, module2) {  // success
        ...
    },
    function (err) {  // failure
        ...
    }
);

Además empezaremos a ver la nueva etiqueta <module> que reemplazará a <script> cuando necesitemos cargar módulos desde HTML

Esto es solo un pequeño extracto de lo que está por venir, puedes leer toda la información aquí: http://www.2ality.com/2014/09/es6-modules-final.html