Node.jsのモジュールシステムを理解する
CommonJSモジュールとESモジュール、Node.jsでファイル間の機能をインポートおよびエクスポートする方法を学びます。
「Node.jsのモジュールシステムを理解する」はCoddyKit上の無料Node.js Backend Development Bootcampレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはNode.js Backend Development Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Node.js Backend Development Bootcampコースには全4レッスンが含まれています。
このレッスンの一部はまだ翻訳されておらず、英語で表示されています。
Organize Your Code with Modules
As apps grow, one giant file gets messy. Modules split code into small, reusable, focused pieces. Node supports two systems: CommonJS and ES Modules.
CommonJS: `require()` & `module.exports`
CommonJS is Node's original module system: require() pulls code in, module.exports pushes code out. Import what you need, export what you offer.
CommonJS: Exporting a Function
Here's mathUtils.js. Whatever you assign to module.exports is what other files can import from it — here, just the add function.
const add = (a, b) => a + b;
const subtract = (a, b) => a - b;
module.exports = add; // Only 'add' is exportedCommonJS: Importing and Using
In another file, require('./mathUtils.js') pulls in that exported function. Keep both files in the same folder and run node app.js.
const addFunction = require('./mathUtils.js');
console.log("Using the imported function:");
console.log(`5 + 3 = ${addFunction(5, 3)}`);
console.log(`10 + 2 = ${addFunction(10, 2)}`);CommonJS: Exporting Multiple Items
Need to export several things? Assign an object to module.exports holding all of them — a clean way to group related utilities.
const greet = (name) => `Hello, ${name}!`;
const farewell = (name) => `Goodbye, ${name}!`;
module.exports = {
greetUser: greet,
sayGoodbye: farewell
};CommonJS: Importing Multiple Items
When a module exports an object, grab pieces with destructuring: const { greetUser, sayGoodbye } = require(...). Cleaner and clearer than dot access.
const { greetUser, sayGoodbye } = require('./utils.js');
console.log(greetUser('Alice'));
console.log(sayGoodbye('Bob'));ES Modules: The Modern Standard
ES Modules (ESM) are JavaScript's official standard, using import/export. They enable tree-shaking — set "type": "module" or use .mjs to opt in.
ESM: Named Exports & Imports
With named exports, you export values by name and import them in matching { } braces — making it obvious exactly which parts you're using.
export const add = (a, b) => a + b;
export const multiply = (a, b) => a * b;
// app.mjs (main entry point)
// To run this: ensure package.json has "type": "module"
// and run with `node app.mjs`
import { add, multiply } from './calculator.mjs';
console.log(`2 + 4 = ${add(2, 4)}`);
console.log(`5 * 6 = ${multiply(5, 6)}`);ESM: Default Exports
A module can have one default export, usually its main feature. Import it under any name you like, no braces needed.
const logMessage = (msg) => console.log(`[LOG] ${msg}`);
export default logMessage;
// main.mjs (main entry point)
// To run this: ensure package.json has "type": "module"
// and run with `node main.mjs`
import myLogger from './logger.mjs';
myLogger('This is a default message.');
myLogger('Another important event.');Quick Check: Module Systems
You've learned about CommonJS and ES Modules. Let's test your understanding!
Recap: Node.js Modules
You've explored Node modules: CommonJS (require/module.exports, the classic) and ESM (import/export, the modern standard). Both keep apps organized.
よくある質問
「Node.jsのモジュールシステムを理解する」レッスンは無料ですか?
はい。「Node.jsのモジュールシステムを理解する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Node.js Backend Development Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Node.js Backend Development Bootcampコースには全4レッスンが含まれています。
「Node.jsのモジュールシステムを理解する」で何を学びますか?
CommonJSモジュールとESモジュール、Node.jsでファイル間の機能をインポートおよびエクスポートする方法を学びます。 ブラウザで直接実行するハンズオンコードでNode.js Backend Development Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Node.js Backend Development Bootcampを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのNode.js Backend Development Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「Node.jsのモジュールシステムを理解する」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このNode.js Backend Development Bootcampレッスンでコードを書いて実行できますか?
はい。すべてのNode.js Backend Development Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Node.jsとNPM入門
- Node.jsのモジュールシステムを理解する
- 非同期JavaScriptとイベントループ
- ファイルシステムとストリームの操作