カテゴリ: JavaScript 更新日: 2026/03/30

JavaScriptのES Modules入門!importとexportの基本と使い方を初心者向けに徹底解説

JavaScriptのES Modules(import/export)の基本と使い方
JavaScriptのES Modules(import/export)の基本と使い方

先生と生徒の会話形式で理解しよう

生徒

「JavaScriptでプログラムを分けて書く方法ってありますか?」

先生

「はい、あります。JavaScriptではES Modulesという仕組みを使って、ファイルを分けて管理できます。」

生徒

「ES Modulesって何ですか?難しそうです。」

先生

「大丈夫です。importとexportというキーワードを使って、部品のようにプログラムを分ける仕組みです。これからゆっくり解説します。」

1. ES Modulesとは何か

1. ES Modulesとは何か
1. ES Modulesとは何か

JavaScriptのES Modulesとは、プログラムを複数のファイルに分けて管理するための仕組みです。大きなプログラムを一つのファイルに全部書いてしまうと、読みにくくなり、修正も大変になります。そこで、機能ごとにファイルを分けて整理する方法が必要になります。

ES Modulesは、ECMAScriptというJavaScriptの公式仕様で定められたモジュール機能です。モジュールとは、部品という意味です。つまり、JavaScriptのコードを部品として分けて、必要な部品だけを読み込むことができる仕組みがES Modulesです。

Web開発やフロントエンド開発、Node.js開発でも、importやexportを使ったモジュール管理は必須の知識です。初心者のうちからES Modulesの基本を理解しておくことで、実務レベルのJavaScriptに近づくことができます。

2. exportの基本的な使い方

2. exportの基本的な使い方
2. exportの基本的な使い方

exportは、自分のファイルの中で作った機能を外に公開するためのキーワードです。公開とは、他のファイルから使えるようにするという意味です。

例えば、計算をする関数を別のファイルに用意してみましょう。


export function add(a, b) {
  return a + b;
}

このようにfunctionの前にexportを付けることで、このadd関数は他のJavaScriptファイルからimportして使えるようになります。これがES Modulesの基本です。

JavaScript初心者の方は、exportは外に出す合図と覚えておくと分かりやすいです。

3. importの基本的な使い方

3. importの基本的な使い方
3. importの基本的な使い方

importは、他のファイルでexportされた機能を読み込むためのキーワードです。読み込むとは、別ファイルの部品を使えるようにすることです。


import { add } from "./calc.js";

const result = add(3, 5);
console.log(result);

8

fromの後には、読み込むファイルのパスを書きます。ここではcalc.jsというファイルからadd関数を読み込んでいます。

中括弧で囲んでいるのは、名前付きエクスポートと呼ばれる形式だからです。名前付きとは、exportした名前をそのまま指定して読み込む方法です。

4. デフォルトエクスポートの使い方

4. デフォルトエクスポートの使い方
4. デフォルトエクスポートの使い方

exportにはもう一つ、defaultという書き方があります。これをデフォルトエクスポートと呼びます。デフォルトとは標準という意味です。


export default function greet(name) {
  return "こんにちは、" + name + "さん";
}

これを読み込む側では、次のように書きます。


import greet from "./greet.js";

console.log(greet("太郎"));

こんにちは、太郎さん

デフォルトエクスポートは中括弧を使いません。名前は自由に付けられるという特徴があります。これもJavaScriptのES Modulesの重要なポイントです。

5. 複数の値をexportする方法

5. 複数の値をexportする方法
5. 複数の値をexportする方法

一つのファイルから複数の関数や変数をexportすることもできます。実際のWebアプリ開発では、この使い方がとても多いです。


function multiply(a, b) {
  return a * b;
}

const pi = 3.14;

export { multiply, pi };

読み込む側では次のようにします。


import { multiply, pi } from "./math.js";

console.log(multiply(4, 5));
console.log(pi);

20
3.14

このように、JavaScriptのimportとexportを使うことで、コードを整理しやすくなります。プログラムが大きくなっても管理しやすいという大きなメリットがあります。

6. HTMLでES Modulesを使う方法

6. HTMLでES Modulesを使う方法
6. HTMLでES Modulesを使う方法

ブラウザでES Modulesを使う場合は、scriptタグにtype属性を指定します。これを忘れるとimportは使えません。


<script type="module" src="main.js"></script>

typeにmoduleと書くことで、このJavaScriptはモジュールとして読み込まれます。これがES Modulesをブラウザで使うための基本設定です。

JavaScript初心者の方は、なぜ動かないのか分からず悩むことが多いですが、type属性の指定を確認することが大切です。

7. ES Modulesを使うメリットと注意点

7. ES Modulesを使うメリットと注意点
7. ES Modulesを使うメリットと注意点

ES Modulesを使うメリットは、コードの再利用がしやすいこと、可読性が高まること、チーム開発で分担しやすいことです。大規模なWeb開発やフロントエンド開発では必須の知識です。

注意点としては、ファイルパスを正しく書くこと、ブラウザではローカルファイルを直接開くとエラーになる場合があることです。その場合は簡易サーバーを使って実行します。

JavaScriptのimport exportを正しく理解することは、モダンJavaScriptを学ぶ上でとても重要です。ES Modulesは現在の標準的なモジュール管理方法ですので、初心者のうちからしっかりと基本を身につけておきましょう。

まとめ

まとめ
まとめ

今回は、JavaScriptのES Modules入門として、importとexportの基本と使い方を中心に解説してきました。ES Modulesとは、JavaScriptのコードを部品化し、複数のファイルに分割して管理するための標準的なモジュール機能です。大規模なWeb開発やフロントエンド開発、Node環境での開発においても、importとexportは欠かせない重要な知識です。

まず理解しておきたいのは、exportは機能を外に公開するためのキーワードであり、importは公開された機能を読み込むためのキーワードだという点です。JavaScriptのモジュール管理では、どの機能を公開し、どの機能を内部専用にするのかを明確にすることが、保守性の高いプログラムを書く第一歩になります。

名前付きエクスポートでは、exportした名前をそのまま中括弧で指定してimportします。一方、デフォルトエクスポートでは、中括弧を使わずに自由な名前で読み込むことができます。この違いを正しく理解することが、JavaScriptのimport exportを使いこなす上で非常に重要です。

また、複数の関数や変数をまとめてexportする方法も学びました。実際のJavaScript開発では、一つのモジュールに関連する処理をまとめて定義し、必要な部分だけをimportする設計がよく使われます。これにより、コードの再利用性が高まり、可読性や拡張性も向上します。

さらに、HTMLでES Modulesを使用する場合は、scriptタグにtype属性としてmoduleを指定する必要があることも確認しました。この設定を忘れるとimportが使えず、エラーの原因になります。JavaScript初心者にとってはつまずきやすいポイントですが、基本を押さえておけば確実に対応できます。

ES Modulesは、モダンJavaScriptにおける標準的なモジュール管理手法です。従来のスクリプトを単一ファイルに書く方法とは異なり、機能ごとに分割し、必要な機能だけを読み込む設計思想が根本にあります。この考え方を身につけることで、より実践的なJavaScriptプログラミングに近づくことができます。

理解を深めるサンプルプログラム

ここで、JavaScriptのES Modulesの基本を復習するためのサンプルプログラムを確認しましょう。計算機能を持つモジュールを作成し、それを別ファイルでimportして利用する流れです。


export function subtract(a, b) {
  return a - b;
}

export const version = "1.0.0";

上記のようにexportを使って関数と定数を公開します。次に、別ファイルでimportします。


import { subtract, version } from "./calc.js";

console.log(subtract(10, 3));
console.log("version:", version);

7
version: 1.0.0

このように、JavaScriptのimportとexportを使うことで、機能ごとに整理されたコードを書くことができます。ES Modulesを理解することは、効率的なプログラム設計、保守性の高いコード作成、そして実務で通用するスキルの習得につながります。

先生と生徒の振り返り会話

生徒

「JavaScriptのES Modulesって、ファイルを分けて管理するための仕組みなんですね。importとexportがその中心なんだと分かりました。」

先生

「その通りです。exportで機能を公開し、importで必要な機能だけを読み込むことで、整理されたプログラムを書くことができます。」

生徒

「名前付きエクスポートとデフォルトエクスポートの違いも理解できました。中括弧を使うかどうかがポイントですね。」

先生

「はい。JavaScriptのモジュール設計では、その違いを意識して使い分けることが大切です。ES ModulesはモダンJavaScriptの基本ですから、しっかり身につけましょう。」

生徒

「これからは、プログラムを一つのファイルにまとめるのではなく、機能ごとに分けてimport exportを活用していきます。」

先生

「それができれば、実務レベルのJavaScript開発にも一歩近づきます。ES Modulesを繰り返し練習して、自分の力にしていきましょう。」

関連記事:
カテゴリの一覧へ
新着記事
New1
JavaScript
JavaScriptのES Modules入門!importとexportの基本と使い方を初心者向けに徹底解説
New2
JavaScript
JavaScriptのelse ifを使った多段階条件分岐の書き方をやさしく解説!初心者でもわかる
New3
JavaScript
JavaScriptの条件分岐(if文・else文)の基本と仕組みを解説!初心者でもわかる使い方
New4
TypeScript
TypeScriptのエラーハンドリング!ログ収集のためのエラーフォーマット設計入門
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptのtoStringとString関数の違いを初心者向けに解説
No.3
Java&Spring記事人気No3
TypeScript
TypeScriptでコメントを書く正しい書き方と使い分け【初心者向けにやさしく解説】
No.4
Java&Spring記事人気No4
JavaScript
JavaScriptのtry-catchの使い方と注意点まとめ!初心者向けエラーハンドリング完全解説
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptで統一感のあるコードを書くための基本ルール完全ガイド初心者向けコーディング規約入門
No.6
Java&Spring記事人気No6
TypeScript
TypeScriptのnever型を使ったエラーハンドリング!例外処理を極める安全なコードの書き方
No.7
Java&Spring記事人気No7
JavaScript
JavaScriptでプロジェクトを管理する方法!ディレクトリ構造とファイル管理の基本
No.8
Java&Spring記事人気No8
TypeScript
TypeScriptでnull・undefined・optionalエラーを防ぐ!安全なコードの書き方完全ガイド