como-usar-modulos-nodejs

Qué son y cómo usar módulos ESM en Node.js

Los módulos ESM (ECMAScript Modules) son una forma moderna de organizar y reutilizar código en JavaScript.

En resumen, los módulos son una forma de exportar el código de un fichero para que pueda usar usado por otros ficheros.

Podemos definir una serie de funciones, variables o constantes en un fichero, y exportarlos. Luego, otro fichero puede importarlos, y los tendrá disponibles para usarlo.

Esto nos permite la creación de bibliotecas, y la organización y reutilización de nuestro código de forma estructurada.

Uso de módulos en Node.js

Creación de un módulo

Vamos a ver como crear un módulo. Simplemente, creamos un fichero de JavaScript. Por ejemplo, operaciones.mjs. En este fichero creamos las funciones o métodos que deseas exportar.

Por ejemplo:

// Función para sumar dos números
export function sumar(a, b) {
 return a + b;
}

// Función para restar dos números
export function restar(a, b) {
 return a - b;
}

En este código, definimos dos funciones, sumar() y restar(), y las exportamos utilizando la palabra clave export.

Importación del módulo

Una vez que hemos creado nuestro módulo con funciones o métodos, podemos importarlo en otro fichero JavaScript para utilizar esas funciones o métodos.

Crea un nuevo fichero JavaScript donde deseas importar las funciones o métodos del módulo. Por ejemplo, app.js.

En el fichero app.js, importa las funciones o métodos del módulo utilizando la palabra clave import.

Por ejemplo:

// Importar las funciones del módulo operaciones.mjs
import { sumar, restar } from './operaciones.mjs';

// Utilizar las funciones importadas
console.log(sumar(5, 3)); // Salida: 8
console.log(restar(10, 4)); // Salida: 6

En este código, importamos las funciones sumar() y restar() del módulo operaciones.mjs utilizando la sintaxis de desestructuración {}.

Exportación de variables

No tenemos que exportar exclusivamente funciones, también podemos exportar variables e incluso constantes. Por ejemplo asi.

// Exportar una variable
export let nombre = 'Juan';

// Exportar una constante
export const PI = 3.14159265359;

Que se consumirían desde nuestra app de la misma forma que hacíamos con las funciones.

import { nombre, PI } from './variables.mjs';

console.log(nombre); // Salida: Juan
console.log(PI); // Salida: 3.14159265359

Ejecución del Programa

Ahora, para ejecutar el programa y ver los resultados, simplemente utiliza Node.js para ejecutar el fichero app.js:

node app.js

Verás que se imprime el resultado de las operaciones de suma y resta en la consola, utilizando las funciones importadas del módulo operaciones.mjs.

Descarga el código

Todo el código de esta entrada está disponible para su descarga en Github github-full