数字を判定

数字を判定するには次のような方法でできます。

  • 数値ではなく数字であることに注意してください。

JavaScript

var foo = 123;

if (!!((typeof(foo)).match(/^(number|string)$/) && parseInt(foo) !== NaN && foo !== Infinity)) {
	alert('数字');
} else {
	alert('数字ではない');
}

JavaScript

var isNumber = function(value) {
	return !!((typeof(value)).match(/^(number|string)$/) && parseInt(value) !== NaN && value !== Infinity);
};

var result1  = isNumber(123),       // true
    result2  = isNumber('123'),     // true
    result3  = isNumber(0),         // true
    result4  = isNumber(-1),        // true
    result5  = isNumber(1.23),      // true
    result5  = isNumber(0123),      // false
    result5  = isNumber(0xFF),      // false
    result6  = isNumber([]),        // false
    result7  = isNumber({}),        // false
    result8  = isNumber(true),      // false
    result9  = isNumber(false),     // false
    result10 = isNumber(null),      // false
    result11 = isNumber(undefined), // false
    result12 = isNumber(Infinity);  // false

JavaScript逆引きリファレンス一覧へ戻る