トップページ >  JavaScript >  isFiniteで数値チェック
初版2013/03/08: 最終更新日2013/03/08
  isFiniteで数値チェック
目次
isFiniteで数値チェック
isFiniteで数値チェック
数値チェックは、isNaNの他にも、isFinite関数を使用してチェックすることができます。
isNaN関数に引数を渡し、その引数が数値の場合false、数値ではない場合trueが返りるため、ちょっとわかりづらい点があります。
isFinite関数は、数値の場合true、数値でない場合falseを返してくれます。
以下、例です。

<html>
<head>
<title></title>
</head>
<body>
<script type="text/javascript">
function a(form){
    if(isFinite(form.txt.value)){
        alert("数値です");
        return false;
    }else{
        alert("数値ではありません");
        return false;
    }
}
</script>
<form onSubmit="javascript:return a(this);">
    <input type="text" name="txt">
    <input type="submit" value="button" name="ボタン">
</form>
</body>
</html>

以下テキストフィールドで何か入力し、buttonを押すと、それが数値かどうか判断します。
1aというような数値から始まる値や、undefinedを入力しても数値でないことを正確に判断してくれます。



但し、Infinityと-Infinityはfalseを返すようです。