Official Sponsor

社内IT・情シス業務でお困りですか? 月額1,650円〜の情シス代行「Lapis Tech」

無料相談・IT診断はこちら
プログラミング 2026-04-09

IT用語: クロージャ(Closure)とは|関数が変数を「覚える」仕組み

関数が定義された時点のスコープの変数を参照し続けるクロージャの仕組みとカウンターなどの実用例を解説。

クロージャとは

クロージャは、「関数が定義された時点の外側のスコープ(変数環境)を記憶し、後からでもその変数にアクセスできる」という性質を持つ関数です。JavaScriptをはじめ多くの言語でサポートされており、状態の隠蔽やファクトリ関数などに活用されます。

シンプルな例:カウンター

function makeCounter() {
  let count = 0;  // 外側の変数
  return function() {
    count++;       // 内側の関数がcountを「覚えている」
    return count;
  };
}

const counter = makeCounter();
counter(); // → 1
counter(); // → 2

count は外から直接変更できません。これがカプセル化(情報隠蔽)の効果です。

なぜ重要なのか?

ReactのuseStateフックやイベントハンドラーなど、現代のフロントエンド開発はクロージャを多用しています。「なぜこの変数が古い値を持っているのか?」というバグの多くはクロージャの仕組みを理解していないことが原因です。

おすすめの高速レンタルサーバー PR

関連する用語 (プログラミング)

全33件を見る

SPA(シングルページアプリケーション)

ページ遷移時にブラウザをリロードせず、JavaScriptで動的にコンテンツを更新するWebアプリのアーキテクチャ。React・Vue・Angularで実装されることが多い。

詳しく読む

Prettier(コードフォーマッター)

コードを自動的に整形するオピニオネイテッドなフォーマッター。JavaScript・TypeScript・CSS・HTML・JSON・Markdownに対応し、チームのコードスタイル論争を終わらせる。

詳しく読む

IT用語: 型安全性(Type Safety)とは|TypeScriptが防ぐバグの種類

コンパイル時に型の不一致を検出する「型安全性」の概念と、JavaScriptからTypeScriptへの移行がなぜ有効なのかを解説。

詳しく読む

PWA(プログレッシブウェブアプリ)

Service WorkerやWeb App Manifestを使い、Webアプリにネイティブアプリに近い体験を提供する技術。オフライン動作・ホーム画面への追加・プッシュ通知が実現できる。

詳しく読む

SSR(サーバーサイドレンダリング)

Webページをサーバー側でHTMLとして生成してからクライアントに送信する手法。SPAのSEO問題を解決し、初期表示を高速化できる。Next.js・Nuxt.jsで実装されることが多い。

詳しく読む

WebAssembly(Wasm)

ブラウザ上でネイティブに近い速度で実行できるバイナリ命令形式。C・C++・Rustなどのコードをブラウザで動かすことができ、ゲーム・動画編集・CADなど計算負荷の高いWebアプリに使われる。

詳しく読む
🎓

ITスキルを動画でマスター

\ 新規受講生 割引実施中 /

React、AWS、Pythonなど、現役エンジニアから直接学べる世界最大級の動画講座。

人気のコースを見る

PR: スポンサーリンク

法人・個人向けサポート 受付中

インフラ構築やトラブル対応で お困りではありませんか?

AWSの構築、社内ネットワーク(VPN/NW)の改善、その他原因不明のITトラブルまで、現役インフラエンジニアが直接サポートします。単発でのご相談や、毎月のスポット顧問契約も可能です。

Sponsored Link

バグ・要望を報告する