エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント3件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Functionオブジェクト - ma2’s diary
Javascriptを勉強中なのですが,Functionオブジェクトで疑問が。 f = {foo: function(a){print a}};こん... Javascriptを勉強中なのですが,Functionオブジェクトで疑問が。 f = {foo: function(a){print a}};こんな感じで無名の関数オブジェクトを作れます。f.foo(10)とすれば10がプリントされます。こんな関数オブジェクトを少しずつパラメータを変えてたくさん作ろうと思いました。ところが for (i=0; i<10; i++) { f = {foo: function(a){print a+i}}; }とやると,「print a+i」は関数評価時まで評価されないので,ループ中の値に関係なく,関数評価時のスコープにある"i"を探して値がセットされてしまいます。本当は「function(a){print a+0}」から「function(a){print a+9}」までの関数を作りたいのです。どうすればいいのでしょう?
2007/10/30 リンク