判断字符串是否为数字,整数,正整数

2,504 阅读1分钟

使用Number(value) 将字符串value转换为数字,根据转换的结果判断是否为数字。

  • 若value为数字组成的字符串,则转换为对应的数字;

  • 若value为数字和字符串的混合,则转换为NaN;

  • 若value为空字符串,则转换为0,即如果Number(value)的结果为0时,value可能为'0'或空字符串''

  • value为null时,也会返回0

判断值是否为数字或数字字符串

//前提条件是保证num不为‘ ’ 和 null
if(!Number(num) && Number(num)!=0){
	alert("不是数字");
}

判断是否为整数

//取整值等于取小数值
if(parseInt(num)===parseFloat(num)){
	alert("是整数");
}
//值取整前等于取整后
if(parseInt(num) === num){
	alert("是整数");
}
//判断数字是否为整数,为数字且为整数时返回TRUE
if(Number.isInteger(num)){
	alert("是整数");
}

判断是否为正数

//转换为数字后大于0,可能为小数
if(Number(num)>0){
	alert("正数");
}

判断数字字符串是否为整数

if(!Number.isInteger( Number(value) ) ){
    alert("请输入整数")
}

判断是否为正整数

//值取整前等于取整后(字符串数字)
if(parseInt(num)== num){
	alert("是整数");
}
if(Number(value)>0 && Number.isInteger( Number(value) ){
    alert('正整数')
}
//若取整前的值等于取整后的值,则为正整数(数字或字符串)
if(Math.round(val)== val){
    alert('正整数')
}
//使用Math.ceil、Math.floor与Math.round同理

参考文章:

JavaScript_判断输入是否为数字,整数,正数

javaScript中判断是否为整数的方法(五种)