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