クロージャとは
クロージャは、組み合わされた(囲まれた)関数と、その周囲の状態への参照の組み合わせです。
言い換えれば、クロージャは内側の関数から外側の関数スコープへのアクセスを提供します。
JavaScript では、関数が作成されるたびにクロージャが作成されます。
なぜクロージャが重要なのか、実際の現場でどんなふうに使えるか
主な使い方については以下のようなものが挙げられます。
- 関数に状態を持たせる手段として
- 外から参照できない変数を定義する手段として
- グローバル変数を減らす手段として
- 高階関数の一部分として
クロージャの例
クロージャの例(消費税の計算)
// 消費税の計算
function (taxRate){
return function (num){
num = num + num * 0.01 * taxRate;
return num;
}
}