isNaN for parseInt()返回false

时间:2017-08-07 18:25:01

标签: javascript jquery

我有这个HTML:

<div id="val">64</div>

和这个JS:

$(function(){
    console.log(isNaN(parseInt($('#val').text()))); 
})

,它是false。如果有号码,我需要检查。

4 个答案:

答案 0 :(得分:2)

如果传递的值不是数字,则isNaN()函数返回true,而不是IT是数字。

由于您要检查给定文字是否为数字,您只需在!来电前添加isNaN()即可测试是否“不是”数字,或者换句话说,如果它是一个数字:

$(function(){
    console.log(!isNaN(parseInt($('#val').text()))); 
})

!运算符的目的是反转布尔值;也就是说,将false更改为true,反之亦然。

答案 1 :(得分:1)

返回isNaN()函数没有任何问题。

如果参数不是数字,则全局函数isNaN将返回 true ;如果返回数字,则返回 false

如果你想检查争论是否是一个数字,你可以做!isNaN()

答案 2 :(得分:0)

如果你想知道div中的值是否是一个数字,你可以使它像

if (!isNaN(parseInt($('#val').text()))) {
  // What you want to do if it IS a number
} else {
  // What you want to do if it IS NOT a number.
}

您基本上使用此功能检查它是否 N a N 。如果它是一个数字,它返回false,你可以执行你计划执行的任何代码,但是如果它不是数字,那么它返回true你可以设置后退。

答案 3 :(得分:0)

使用if语句首先检查是否为isNaN,然后​​将其解析为integer或console.log。

$(function(){
var number = !isNaN($('#val').text())?parseInt($('#val').text()):'NaN';
console.log(number);
})