如何在javascript中检查给定变量是否为整数?

96 阅读1分钟

这些简短的教程涵盖了如何在javascript中检查一个给定的声明变量是否是整数。

例如,Integer变量总是包含数字。

如何在JavaScript中检查一个变量是否是整数?

我们有多种方法可以做到这一点。

一种方法是使用isNanparseIntparseFloat 方法来检查给定的变量是否是数字。

isNan() parseInt() :用于检查给定的变量是不是数字。 :用于将字符串或数字转换为以数字为基础的十六进制的数字。parseFloat()

下面是一个代码

function checkVariableNumber(arg){
    return !isNaN(arg) && parseInt(arg) == parseFloat(arg);
}
console.log(checkVariableNumber(256)); //true
console.log(checkVariableNumber('abc'));//false
console.log(checkVariableNumber('11')); //true

正则表达式包含数字0-9和符号d,只允许数字。

下面是一个使用正则表达式检查整数或数字的例子。

var number = /^[0-9]\d*$/;

console.log(number.test(11))//true
console.log(number.test('11'))//true
console.log(number.test('abc'))//false
console.log(number.test('1b'))//false
  • 使用ES6数字isInteger方法

EcmaScript 2015在Number 对象中引入了isInteger() 方法。

语法:

Number.isInteger(parameter)

参数可以是stringnumber

console.log(Number.isInteger(1))//true
console.log(Number.isInteger(""))//false
console.log(Number.isInteger(21))//true
console.log(Number.isInteger(""))//false
console.log(Number.isInteger("23"))//false

由于javascript在客户端浏览器中运行,所有最新的浏览器都支持这个方法。

lodash isInteger方法

如果应用程序使用lodash库,就很容易检查变量是否为整数。它提供了lodash.isInteger函数,需要一个数字参数。

console.log(_.isInteger(21))//true
console.log(_.isInteger(""))//false
console.log(_.isInteger("23"))//false