• ベストアンサー

javascriptで結果表示テキストフィールドにInfinityやNaNを表示させない方法はありますか?

テキストフィールドに合計ともう1つの合計を わるのですが、合計/合計とした場合、 最初の合計が0/3となっていると、Infinityと表示し、 空白/3となると、NaNを表示します。 表示させない方法はありますか? 教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
noname#25358
noname#25358
回答No.1

 isNaN() という関数があるので、それで不正な数値かどうかチェックできます。  また、数値オブジェクトは Number.POSITIVE_INFINITY と Number.NEGATIVE_INFINITY という2つのシステム変数を使ってチェックできます。  つまり、たとえばテキストフィールドの名前が TEST1 だった場合、  obj = document.all;  num = obj.TEST1.value-0;  if ( isNaN(num) ||     num = Number.POSITIVE_INFINITY ||     num = Number.NEGATIVE_INFINITY ) ) obj.TEST1.value="";  というプログラムによって、不正な数値を "" にすることができます。

sara555
質問者

お礼

すばやい回答ありがとうございました。 早速試してみたところ、構文エラーが出てしまい、 以下のように書いてみましたら、すぐできました。 if ( (isNaN(num)) ||     (num == Number.POSITIVE_INFINITY) ||     (num == Number.NEGATIVE_INFINITY) ) obj.TEST1.value=""; こんな便利なシステム変数があるなんて、知りません でした。本当に助かりました。 有難うございました。

関連するQ&A