update.はじめにクロージャって何?クロージャとは、関数内に現れる変数の名前解決が、ローカルスコープだけでなく、関数が定義された場所のスコープも含めて行われる関数のことです。PHP関数の中に関数を書くクロージャを理解するために、関数の中の関数を使うコードを書いてみます。関数リテラルをそのままreturnする方法。//Hello!あるいは、こんな風にも書けます。関数リテラル式を変数に入れてからreturnする方法。//Yo!こんな風に書き直すこともできます。関数を一旦定義してから、関数名をreturnする方法。JavaScriptのクロージャのサンプルコードです。//3cntは関数fの外からは参照できないですが、クロージャ(inner)からは参照することができます。ここまで来ると、冒頭の「クロージャって何?」の意味が分かる気がします。ここではinner_func2.jsの形式を使って関数を定義しましたが、他の形式でも同様の動作をさせることができます。二つの関数を入れる関数fの中に、2つのクロージャを入れることもできます。f();console.log(fn.add());console.log(fn.add());console.log(fn.sub());console.log(fn.sub());2つのクロージャから、同じ変数cntを参照できます。Classっぽく書くthisを使って、クラスっぽく書くこともできます。//11MyClass内の関数から参照する変数を、this.cntとすれば外部から直接参照可能になります。cntで宣言)とすれば外部からは直接参照不可になります。//1初期値を設定するfの引数を利用するなどして、クロージャから参照する変数の初期値を与えることもできます。upLoginユーザーは見つかりませんでした。