Moduli JavaScript
Moduli JavaScript (import, export)
Introduzione ai moduli JavaScript, che permettono di suddividere il codice in più file mantenendolo organizzato, leggibile e riutilizzabile.
Introduzione
In JavaScript moderno (ES6) è possibile suddividere il codice in moduli, cioè file separati che contengono funzioni, oggetti o classi. Ogni modulo può esportare elementi da rendere disponibili ad altri file e può importare ciò che serve. Questo approccio migliora l’organizzazione e facilita la manutenzione del codice.
- Ogni file è un modulo.
- export rende disponibile una funzione, variabile o classe ad altri moduli.
- import permette di utilizzare ciò che è stato esportato da altri file.
Export di funzioni e variabili
Possiamo esportare funzioni o costanti da un file JavaScript.
Codice Esempio: modulo matematico (math.js)

export function somma(a, b) {
return a + b;
}
export const PI = 3.14;
Import in un altro file
Per usare ciò che è stato esportato si utilizza import.
Codice Esempio: utilizzo del modulo (main.js)

import { somma, PI } from './math.js';
console.log(somma(4, 6)); // 10
console.log(PI); // 3.14
Export e import di default
Un modulo può avere un export di default, cioè un elemento principale. In tal caso non serve usare le graffe {} per importarlo.
Codice Esempio: export default

// file messaggio.js
export default function saluta(nome) {
return "Ciao " + nome;
}
// file main.js
import saluta from './messaggio.js';
console.log(saluta("Marco")); // Ciao Marco
Tabella riassuntiva
Parola chiave | Descrizione | Note |
---|---|---|
export | Permette di condividere funzioni, oggetti, variabili o classi | Può essere multiplo |
import | Permette di usare ciò che è stato esportato da altri file | Richiede il percorso del file |
export default | Definisce un elemento principale del modulo | Un solo default per file |
Considerazioni
L’uso dei moduli rende il codice scalabile e organizzato. Con import ed export possiamo riutilizzare il codice tra file diversi e separare le responsabilità. Questa pratica è alla base dei progetti moderni in JavaScript e viene usata in framework come React, Angular e Vue.