Module Scripts
<script type="module"> enables ES module syntax — import and export — directly in HTML. Modules are deferred by default and run in strict mode.
Each module has its own scope, preventing global variable pollution.
<script type="module"> enables ES module syntax — import and export — directly in HTML. Modules are deferred by default and run in strict mode.
Each module has its own scope, preventing global variable pollution.
<!-- main.html -->
<script type="module" src="main.js"></script>
<!-- main.js -->
import { greet } from "./utils.js";
greet("World");
<!-- utils.js -->
export function greet(name) {
console.log(`Hello, ${name}!`);
}
Module scripts are always deferred — no need to add the defer attribute explicitly.