undefined
var test; alert(test);
"undefined"と表示されます。
だから、変数の値をリフレッシュしたいときは
undefinedってのを代入すればいいんだべー、と思って
var test = "hoge"; test = undefined;
って書いてました。
最近気づいたのですが、
この場合のundefinedは未定義の特別な値ではなく
undefiendという宣言も初期化もされていないundefinedという変数を
testに代入しているらしいのです。
(結果、未割当な値が代入されるのでtestはundefinedになる)
undefinedという概念は存在するんだけど、特別なキーワードではないので
undefinedという上書き可能なプロパティのようです。
(id:sawatさんからご指摘いただき修正しました。2007/8/22)
undefined = "hogehoge"; alert(undefined); //hogehogeと表示
普通にこういう事になります。
常識臭い?
ってか、そもそもそんな事しない?
明示的にundefinedにリフレッシュする場合は、
var test = 10; alert(test); //10と表示 test = void(0); alert(test); //undefinedと表示
とかすれば良いみたいです。