■通常の関数呼び出しによる出力


■イベントハンドラとしての関数呼び出し




【実験の結果】
ごらんのとおり(イベントハンドラ内ではない)通常の呼び出しでは問題なく出力される。
しかし、イベントハンドラ内で呼び出されると、関数内での2度目のdocument.write()の変数出力が、 NN4.75, NN6では変数が定義れていないというエラーになってしまう(2、4のケース)。
【原因の推測】
1回目のdocument.write()が呼び出された時点でdocumentオブジェクトが切り替わって しまい、そのdocument内に参照しようとした変数の定義が見あたらないのでエラーとなる。
documentが切り替わった時点でdocument内に記述されたJavascript自体が消えて無くなって しまいそうであるが、それは別に保持されているのだろう。
2度目のdocument.write()で文字列定数を出力する場合は、document.write()の引数として直接記述 しているので参照できたものと思われる。
【ってことは】
イベントハンドラ内ではdocument.write()を1度呼んだら、それ以降は変数を参照できないということか?
引数で渡せばいいんだろうな、こんな風に..
でも、変数をたくさん使いたいときは困るよね。う〜む。
Debug