ESM basics — import/export, default vs named
Learn ESM import/export basics: what a module is, named vs default exports, namespace imports, and a light CommonJS contrast.
What is a module?
Goal: Read module syntax with confidence.
- What a module is
- Named vs default exports
- import * as namespace
- Quick CJS contrast

Module = file + local scope
A module is a file. Its variables are local unless you export them.
// A module is just a file with its own scope
// Here we simulate "module scope" by keeping variables local.
(function () {
const secret = 42; // local to this file/scope
function reveal() { return "value:" + secret; }
console.log("module-like scope:", typeof secret === "number", reveal());
})();
All lessons in this course
- ESM basics — import/export, default vs named
- CommonJS basics — require/module.exports and exports
- Module resolution in Node and browser bundlers