我在JavaScript中寻找一种简单的方法来检查一个数字是否有小数点(以确定它是否为整数)。例如,

23 -> OK
5 -> OK
3.5 -> not OK
34.345 -> not OK
if(number is integer) {...}

当前回答

也许这对你有用?

它使用regex检查数字中是否有逗号,如果没有,则添加逗号和条纹。

var myNumber = '50';
function addCommaStripe(text){
    if(/,/.test(text) == false){
        return text += ',-';
    } else {
        return text;
    }
}
myNumber = addCommaStripe(myNumber);

其他回答

如果value是字符串(例如from <input),使用下面的语句:

Math.floor(value).toString() !== value

我将. tostring()添加到floor,使其也适用于value == "1 "的情况。(以十进制分隔符或其他字符串结束)。同时数学。floor总是返回一些值,因此. tostring()永远不会失败。

Number.isSafeInteger(value);

在JavaScript中,isSafeInteger()是一个Number方法,用于返回一个布尔值,指示一个值是否为安全整数。这意味着它是一个整数值,可以精确地表示为IEEE-754双精度数,而不需要舍入。

parseInt(num) === num

当传递一个数字时,parseInt()只是将数字作为int返回:

parseInt(3.3) === 3.3 // false because 3 !== 3.3
parseInt(3) === 3     // true

你可以把它乘以10,然后用10做一个“模数”运算/除法,然后检查这两个运算的结果是否为零。这两个操作的结果将给出小数点后的第一个数字。 如果result等于0,则该数为整数。

if ( (int)(number * 10.0) % 10 == 0 ){
// your code
}

//如何字节化它?

Number.prototype.isInt= function(){
 return this== this>> 0;
}

我总是觉得javascript中的位操作符很糟糕

他们几乎不锻炼。