Module & Import/Export — Node.js

Node.js mengorganisir kode ke dalam module — file yang bisa diimpor oleh file lain. CommonJS (cara lama, masih banyak dipakai): // math.js — export function tam

Node.js mengorganisir kode ke dalam module — file yang bisa diimpor oleh file lain.

CommonJS (cara lama, masih banyak dipakai):

// math.js — export
function tambah(a, b) { return a + b; }
function kurang(a, b) { return a - b; }
module.exports = { tambah, kurang };

// app.js — import
const { tambah, kurang } = require("./math");
console.log(tambah(3, 5)); // 8

ES Modules (cara baru, recommended):

// math.js — export
export function tambah(a, b) { return a + b; }
export function kurang(a, b) { return a - b; }

// app.js — import
import { tambah, kurang } from "./math.js";
console.log(tambah(3, 5)); // 8

Default export:

// greet.js
export default function greet(name) {
  return `Halo, ${name}!`;
}

// app.js
import greet from "./greet.js";

Built-in modules Node.js:

import fs from "fs";       // File system
import path from "path";   // Path manipulation
import http from "http";   // HTTP server
import crypto from "crypto"; // Encryption

package.json scripts:

Setiap project Node.js punya package.json. Bagian scripts berisi shortcut command yang bisa dijalankan dengan npm run.

{
  "name": "my-app",
  "version": "1.0.0",
  "type": "module",
  "scripts": {
    "start": "node app.js",
    "dev": "nodemon app.js",
    "test": "vitest"
  },
  "dependencies": {
    "express": "^4.19.0"
  }
}

Opt-in ES Modules: tambahkan "type": "module" di package.json agar import/export langsung bekerja di file .js tanpa harus pakai ekstensi .mjs.

Yang akan kamu pelajari