FireFox + JavaScriptの謎


function foo( foovar )
{
var hoge = 0;
if( foovar != 0 ) hoge = foovar;
document.write( hoge );
}

なるコードを書いた時に、foovarが0の時にdocument.writeのところでhogeがundefinedと解釈されてしまう(泣)
FireFoxとSafariだけの現象でした。ちゃんと「var hoge = 0」って定義しているのにー。

function foo( foovar )
{
var hoge = 0;
if( foovar != 0 )
{
hoge = foovar;
}
else
{
hoge = 0;
}
document.write( hoge );
}

とすると回避できる。
謎だー。