カテゴリ: JavaScript 更新日: 2026/02/01

JavaScriptのカスタムイベントを作成・発火する方法を学ぼう

JavaScriptのカスタムイベントを作成・発火する方法を学ぼう
JavaScriptのカスタムイベントを作成・発火する方法を学ぼう

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

生徒

「先生、JavaScriptで自分専用のイベントを作ることはできますか?」

先生

「はい、できます。それをカスタムイベントと呼びます。標準のクリックや変更イベントだけでなく、独自のイベントを作って発火することが可能です。」

生徒

「具体的にどうやって作るんですか?」

先生

CustomEventを使ってイベントを作り、dispatchEventで発火させます。それでは順番に見ていきましょう!」

1. カスタムイベントとは?

1. カスタムイベントとは?
1. カスタムイベントとは?

カスタムイベントとは、JavaScriptで自分が自由に名前をつけて作るイベントのことです。通常のclickchangeイベントのように、要素が操作されたときに実行される独自の処理を作れます。

例えば、ショッピングカートに商品を追加したときに「商品追加イベント」を作ることもできます。これにより、プログラムをより柔軟に設計できるのです。

2. カスタムイベントの作り方

2. カスタムイベントの作り方
2. カスタムイベントの作り方

カスタムイベントはCustomEventコンストラクタを使って作成します。第一引数にイベント名、第二引数に詳細情報を設定できます。detailは追加情報を渡すオブジェクトです。


const myEvent = new CustomEvent("myCustomEvent", {
  detail: { message: "こんにちは!" }
});

このコードでは、myCustomEventという名前のイベントを作り、detailで「こんにちは!」という情報を渡しています。

3. カスタムイベントの発火

3. カスタムイベントの発火
3. カスタムイベントの発火

作ったカスタムイベントは、dispatchEventを使って発火させます。対象となる要素に対して呼び出すことで、イベントリスナーが反応します。


const box = document.getElementById("box");

// イベントリスナーを登録
box.addEventListener("myCustomEvent", function(event) {
  console.log("カスタムイベントが発火しました:", event.detail.message);
});

// イベントを発火
box.dispatchEvent(myEvent);

この例では、ボックス要素にカスタムイベントのリスナーを設定し、dispatchEventで発火させると、コンソールにメッセージが表示されます。

4. カスタムイベントの活用例

4. カスタムイベントの活用例
4. カスタムイベントの活用例

カスタムイベントは、コンポーネント間の連携や動的なUI更新で非常に便利です。例えば、タブの切り替えやフォーム送信後の通知、非同期処理の完了通知などに活用できます。

ポイントは、イベント名をわかりやすく付けることと、detailで必要な情報を渡すことです。こうすることで、他の部分のコードに影響を与えずにイベントを扱えます。

5. まとめると

5. まとめると
5. まとめると

カスタムイベントは、JavaScriptで自由に作れる独自のイベントです。CustomEventで作り、dispatchEventで発火させます。detailを使うと、追加情報を渡せるため、柔軟な処理が可能です。

初心者の方は、まず簡単なボックス要素などで試してみて、コンソールでイベントの発火を確認すると理解しやすいです。慣れてくると、複雑なUIやコンポーネント間の通信に役立ちます。

カテゴリの一覧へ
新着記事
New1
TypeScript
TypeScriptでパスエイリアスを設定する方法!baseUrlとpathsでコードをスッキリ整理
New2
JavaScript
JavaScriptのfor文の書き方を初心者向けにやさしく解説
New3
JavaScript
JavaScriptの関数でよくあるエラーとその解決法まとめ
New4
JavaScript
JavaScriptのイベント処理でよくあるエラーとその対処法
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptのマウスイベントの使い方(click, mouseoverなど)
No.3
Java&Spring記事人気No3
JavaScript
JavaScriptのtoStringとString関数の違いを初心者向けに解説
No.4
Java&Spring記事人気No4
JavaScript
JavaScriptの純粋関数(pure function)と副作用の違いを理解しよう
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.6
Java&Spring記事人気No6
JavaScript
JavaScriptで文字列をforループで1文字ずつ処理する方法!初心者向け解説
No.7
Java&Spring記事人気No7
TypeScript
TypeScriptの始め方:開発環境の構築手順【初心者向け】
No.8
Java&Spring記事人気No8
TypeScript
TypeScript学習におすすめの無料教材・リファレンスサイト【初心者向け】