模組化可以讓 JavaScript 程式碼更具結構性、可重用與可維護。ES6 引入原生模組語法,使用 export 與 import 來分享與引用程式碼。
// utils.js
export const add = (a, b) => a + b;
export const sub = (a, b) => a - b;// main.js
import { add, sub } from "./utils.js";
console.log(add(2, 3)); // 5可匯出多個變數或函式,使用大括號引入:
export const name = "Tom";
export function greet() {}每個模組只能有一個 default 匯出:
// user.js
export default function sayHi() {
console.log("Hi!");
}// main.js
import sayHi from "./user.js";
sayHi();import { add as plus } from "./utils.js";
console.log(plus(5, 7));// math.js
export default "MathUtils";
export const PI = 3.14;import name, { PI } from "./math.js";- 模組檔案必須使用
.js且執行於支援 ES Modules 的環境(如瀏覽器需<script type="module">)。 - 相對路徑必須加上副檔名,如
./utils.js
<script type="module" src="main.js"></script>模組化是大型應用中不可或缺的一環,推薦搭配打包工具如 Webpack、Vite、ESBuild 等,實現更高效的模組管理與編譯。