js如何判断输入的数据是整数还是小数

JavaScript017

js如何判断输入的数据是整数还是小数,第1张

可以转换为整数parseInt(number)和原来的数比较。

也可以转换成字符串判断。

var str = number+""

if(str.indexOf(".")==-1){

alert("整数")

}else{

alert("小数")

}

扩展资料:

判断是否数字

function isNumber(str){

var n = Number(str)

if (!isNaN(n)){

return true

}else{

return false

}

}

判断是否对象

function isObj(obj){

if(typeof obj=="object"){

return true

}else{

return false

}

}

判断是否为空

function emptyFun(obj){

var obj=obj

if(obj==""||obj==null||obj==undefined||obj=="null"||obj=="undefined"){

return true

}else{

return false

}

}

获取地址栏参数

function GetQueryString(name){

var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)")

var r = window.location.search.substr(1).match(reg)

if(r!=null)return  unescape(r[2])return null

}

第一种方法,编写两个方法getIntegerTimes(),isPositiveIntegerTimes()判断两个数(包含小数),先获取倍数,再判断倍数是否为正整数,好处就是两个方法都可以作为通用方法调用.实现功能多.

//获取两个数的倍数,返回倍数

function getIntegerTimes(arg1,arg2){

if(arg1<arg2){

var flag=arg1

arg1=arg2

arg2=arg1

}

var t1=0,t2=0,r1,r2

try{t1=arg1.toString().split(".")[1].length}catch(e){}

try{t2=arg2.toString().split(".")[1].length}catch(e){}

with(Math){

r1=Number(arg1.toString().replace(".",""))

r2=Number(arg2.toString().replace(".",""))

return (r1/r2)*pow(10,t2-t1)

}

//判断是否为正整数,返回true或false

function isPositiveIntegerTimes(arg) {

var num = arg.toString()

if (!(/(^[1-9]\d*$)/.test(num))) {

return false

}else {

return true

}

}

第二种方法,就是单一方法isPositiveIntegerTimes(),判断两个数(包含小数)是否整除

//判断两个数的是否为整数倍,返回true或者false

function isPositiveIntegerTimes(arg1,arg2){

if(arg1<arg2){

var flag=arg1

arg1=arg2

arg2=arg1

}

var t1=0,t2=0,r1,r2

try{t1=arg1.toString().split(".")[1].length}catch(e){}

try{t2=arg2.toString().split(".")[1].length}catch(e){}

with(Math){

r1=Number(arg1.toString().replace(".",""))

r2=Number(arg2.toString().replace(".",""))

var times= (r1/r2)*pow(10,t2-t1)

if (!(/(^[1-9]\d*$)/.test(times.toString()))) {

return false

}else {

return true

}

}