📅  最后修改于: 2023-12-03 14:55:44.951000             🧑  作者: Mango
在JavaScript中,我们可以使用不同的方法来检查一个变量是否是数字。以下是几种常用的方式:
isNaN()
函数会尝试把一个参数转换为数字,如果成功返回 false,否则返回 true。所以可以使用它来判断一个变量是否是数字。
示例代码:
var num = 123;
var str = "hello"
if (isNaN(num)) {
console.log("num is not a number.");
} else {
console.log("num is a number.");
}
if (isNaN(str)) {
console.log("str is not a number.");
} else {
console.log("str is a number.");
}
输出结果:
num is a number.
str is not a number.
注意:isNaN()
函数对于空字符串、字符串中只含有空格以及 null 值,都会返回 false。
typeof
是一个操作符,用于返回一个值的数据类型。当想要检查一个变量是否是数字时,我们可以使用 typeof
并判断其返回值是否为 'number'
。
示例代码:
var num = 123;
var str = "hello"
if (typeof num === "number") {
console.log("num is a number.");
} else {
console.log("num is not a number.");
}
if (typeof str === "number") {
console.log("str is a number.");
} else {
console.log("str is not a number.");
}
输出结果:
num is a number.
str is not a number.
正则表达式可以用来匹配数字,如果匹配成功,则变量是数字,否则不是数字。
示例代码:
function isNumber(n) {
return /^-?[\d.]+(?:e-?\d+)?$/.test(n);
}
console.log(isNumber("123")); // true
console.log(isNumber("-123.10")); // true
console.log(isNumber("abc")); // false
console.log(isNumber("1.23e4")); // true
以上是几种常用的检查变量是否是数字的方法。在具体应用时,要结合实际情况选择合适的方法。