在 JavaScript 中检查字符串是否为数字

Hiten Kanwar 2023年1月30日 2021年10月2日
  1. 在 JavaScript 中使用 isNaN() 函数检查给定的字符串是否为数字
  2. 在 JavaScript 中使用 + 运算符检查给定字符串是否为数字
  3. 在 JavaScript 中使用 parseInt() 函数检查给定的字符串是否为数字
  4. 在 JavaScript 中使用 Number() 函数检查给定的字符串是否为数字
  5. 在 JavaScript 中使用正则表达式检查给定字符串是否为数字
在 JavaScript 中检查字符串是否为数字

编程语言中的数字是表示整数、浮点数等的数据类型。字符串表示所有字符而不仅仅是数值。字符串可以包含数值。

我们将在本文中检查给定的字符串是否为数字。

在 JavaScript 中使用 isNaN() 函数检查给定的字符串是否为数字

isNaN() 函数确定给定的值是数字还是非法数字(Not-a-Number)。该函数对于 NaN 值输出为 True,对于有效数值返回 False。

例子:

console.log(isNaN('195'))
console.log(isNaN('boo'))
console.log(isNaN('100px'))

输出:

false 
true
true

如果我们想创建一个对有效值返回 true 的函数,我们总是可以通过创建一个对 isNaN() 函数的输出求反的函数来实现。

function isNum(val){
  return !isNaN(val)
}
console.log(isNum('aaa'));          
console.log(isNum('13579'));        
console.log(isNum('-13'));

输出:

false
true
true

现在这个名为 isNum() 的函数将为有效的数值返回 true

在 JavaScript 中使用 + 运算符检查给定字符串是否为数字

+ 运算符返回字符串的数值,如果字符串不是纯数字字符,则返回 NaN

例如,

console.log(+'195')
console.log(+'boo')

输出:

195
NaN

在 JavaScript 中使用 parseInt() 函数检查给定的字符串是否为数字

parseInt() 函数解析一个字符串,然后返回一个整数。当无法从字符串中提取数字时,它返回 NaN。

例如,

console.log(parseInt('195'))
console.log(parseInt('boo'))

输出:

195
NaN

在 JavaScript 中使用 Number() 函数检查给定的字符串是否为数字

Number() 函数将参数转换为表示对象值的数字。如果无法将值转换为数字,则返回 NaN。

我们也可以将它与字符串一起使用来检查给定的字符串是否为数字。

例如,

console.log(Number('195'))
console.log(Number('boo'))

输出:

195
NaN

在 JavaScript 中使用正则表达式检查给定字符串是否为数字

正则表达式是描述字符模式的对象。这些可用于搜索模式、对其进行更改、添加、删除等。

我们可以使用这样的模式来检查字符串是否包含数字。

例如,

function isNumeric(val) {
    return /^-?\d+$/.test(val);
}

console.log(isNumeric('aaa'));          
console.log(isNumeric('13579'));        
console.log(isNumeric('-13'));         

输出:

false
true
true

相关文章 - JavaScript String