IEの「フォーム名.elements['要素名']」の動作がおかしい

<form name="hogeForm">
  <input name="code" value="123456789">
</form>

なんてformがあったときに、

alert(document.hogeForm.elements['code']);

を実行すると、

[object]

がalertされます。
「フォーム名.elements['要素名']」は、指定した名前のform内の要素(ここではname="code"の要素)を取得しているわけです。

では、

alert(document.hogeForm.elements['name']);

を実行した結果はどうなるでしょう?

正解はもちろん「undefined」(formm内に要素がnameという名前で定義されている要素は存在しないから)…ではなく!

hogeForm

なんとなぜかform名が取れているようです…。なぜだ(怒)。
おかげでコレにはまって残業するはめになりました(しょんぼり)。

ちなみにFireFoxではちゃんと「undefined」がalertされます。FireFoxえらい。