我在JavaScript中寻找一种简单的方法来检查一个数字是否有小数点(以确定它是否为整数)。例如,
23 -> OK
5 -> OK
3.5 -> not OK
34.345 -> not OK
if(number is integer) {...}
我在JavaScript中寻找一种简单的方法来检查一个数字是否有小数点(以确定它是否为整数)。例如,
23 -> OK
5 -> OK
3.5 -> not OK
34.345 -> not OK
if(number is integer) {...}
当前回答
你可以把它乘以10,然后用10做一个“模数”运算/除法,然后检查这两个运算的结果是否为零。这两个操作的结果将给出小数点后的第一个数字。 如果result等于0,则该数为整数。
if ( (int)(number * 10.0) % 10 == 0 ){
// your code
}
其他回答
function isDecimal(n){
if(n == "")
return false;
var strCheck = "0123456789";
var i;
for(i in n){
if(strCheck.indexOf(n[i]) == -1)
return false;
}
return true;
}
也许这对你有用?
它使用regex检查数字中是否有逗号,如果没有,则添加逗号和条纹。
var myNumber = '50';
function addCommaStripe(text){
if(/,/.test(text) == false){
return text += ',-';
} else {
return text;
}
}
myNumber = addCommaStripe(myNumber);
你可以把它乘以10,然后用10做一个“模数”运算/除法,然后检查这两个运算的结果是否为零。这两个操作的结果将给出小数点后的第一个数字。 如果result等于0,则该数为整数。
if ( (int)(number * 10.0) % 10 == 0 ){
// your code
}
Number.isInteger()可能是最简洁的。如果是整数则返回true,如果不是则返回false。
或者你可以用这个来判断它是不是小数:
string.indexOf(".") == -1;