【関数について】
・JavaScriptの関数を変数に代入するという事は、関数の参照値を代入している事でしょうか?
・また、その関数を呼び出す際は、その関数をインスタンス化するということでしょうか?
・変数を複数作成して、それぞれに同じ関数を格納し、それを個別に実行すると、その数分別々のオブジェクトがインスタンス化されるという事でしょうか?
・デバッグをするとCallオブジェクトにthisというのがありましたが、これも関数を呼び出すと、その関数がインスタンス化されオブジェクト化するから、thisはそのオブジェクトを指すという認識で大丈夫でしょうか?
【クロージャについて】
javascript
1function closure( init ){ 2 var counter = init; 3 return function(){ 4 return counter++; 5 } 6} 7var myClosure = closure( 1 ); 8document.write( myClosure() );
・関数内( closure(init) )のreturnで無名関数が変数myClosureに格納されるとき、無名関数のCallオブジェクトだけではなく、closure(init)のCallオブジェクトも同時に生きたまま格納されるのでしょうか?
(実際に変数myClosureに格納されるのは無名関数にみという事と、通常は関数が終了すると同時にオブジェクトは破棄されるので、無名関数しか格納されていないのであれば、closure(init)のCallオブジェクトはどうなるのかと。)
【その他】
・グローバルオブジェクトはJavaScriptのみの概念でしょうか?
質問量が多いですが、どうぞ宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2016/08/08 06:05