示例 1: 使用 Number.isInteger()
// program to check if a number is a float or integer value function checkNumber(x) { // check if the passed value is a number if(typeof x == 'number' && !isNaN(x)){ // check if it is integer if (Number.isInteger(x)) { console.log(`${x} is integer.`); } else { console.log(`${x} is a float value.`); } } else { console.log(`${x} is not a number`); } } checkNumber('hello'); checkNumber(44); checkNumber(3.4); checkNumber(-3.4); checkNumber(NaN);
输出
hello is not a number 44 is integer. 3.4 is a float value. -3.4 is a float value. NaN is not a number
在上面的程序中,检查传入的值是整数值还是浮点值。
typeof
运算符用于检查传递值的数据类型。
isNaN()
方法检查传递的值是否为数字。
Number.isInteger()
方法用于检查数字是否为整数值。
示例 2: 使用正则表达式
// program to check if a number is a float or integer value function checkNumber(x) { let regexPattern = /^-?[0-9]+$/; // check if the passed number is integer or float let result = regexPattern.test(x); if(result) { console.log(`${x} is an integer.`); } else { console.log(`${x} is a float value.`) } } checkNumber(44); checkNumber(-44); checkNumber(3.4); checkNumber(-3.4);
输出
44 is an integer. -44 is an integer. 3.4 is a float value. -3.4 is a float value.
在上面的例子中,正则表达式模式用于检查传递的参数是整数值还是浮点值。
模式
/^-?[0-9]+$/
查找整数值。
RegExp
对象的
test()
方法用于测试具有给定值的模式。
注意: 以上程序只适用于数字。