質問編集履歴

1

回答の内容から派生した質問を追加

2016/10/05 09:24

投稿

mit0223
mit0223

スコア3401

test CHANGED
File without changes
test CHANGED
@@ -223,3 +223,17 @@
223
223
  上の例でいいますと、usersJSONPath, userList, handlers が自由変数になっており、クロージャ間で共有されています。これらはクラスの場合だとインスタンス変数になるところですが、new せずにインスタンスができるところが、ラムダ式っぽくてスマートなように見えます。this も prototype も new も不要です。
224
224
 
225
225
  もちろん、継承がある場合はクロージャの塊では対応できないと思いますが、継承のないクラスであれば、クロージャの塊のほうが Javascript にとっては自然なような気がしてきて質問しています。
226
+
227
+
228
+
229
+ ---
230
+
231
+ 頂いた回答から派生した質問を追加させていただきます。
232
+
233
+
234
+
235
+ 質問3. クロージャの塊パターンでは関数オブジェクトが大量にできてしまい、性能負担になる場合がありそうなことを教えていただきました。その点を考慮して、シングルトンにしか使わなければ、クロージャの塊パターンでも問題は無いと考えて良いでしょうか?
236
+
237
+
238
+
239
+ 質問4. オブジェクトを new を使わずに生成するパターンでも this を使って自由変数を避けるができることを教えていただきました。自由変数、クロージャを避けたほうが良い理由というのはありますでしょうか?