javascript で変数を定義する時に、var を付ける場合があります。var を付けないと、変数がグローバル名前空間に入ってしまう。
| >>> test = function() { test = "blah" }; | |
| function() | |
| >>> test(); | |
| >>> test(); | |
| TypeError: test is not a function source=with(_FirebugCommandLine){test();\n}; |
この場合だと、testがtestを文字列に変えてしまう。
| >>> test = function() { blah = "blah" }; | |
| function() | |
| >>> test(); | |
| >>> blah | |
| "blah" |
...ということです。
知らなくて恥ずかしいんですけど、今まで書いたjavascriptで一再付けなくて、あまりよくない。でも、逆に var を付けるのがあまりにも面倒くさいので、凹んでjavascriptを書く気がちょっと減ってしまった。orz
