JavaScript Number isNaN() 方法



JavaScript Number **isNaN()** 方法用于确定给定数字是否为“NaN”。**“NaN”**代表“非数字”。如果您熟悉此缩写,您就会了解此方法的用途。如果给定值不是数字,则该方法返回布尔值“true”,否则返回“false”。

isNaN() vs Number.isNaN()

**isNaN()** 方法如果值为非数字则返回 true;而 **Number.isNaN()** 则只有在数字本身为 NaN 时才返回 true。

**注意:** isNaN() 方法会在必要时将值转换为数字。

语法

以下是 JavaScript Number **isNaN()** 方法的语法:

Number.isNaN(value)

参数

此方法接受一个名为“value”的参数。具体说明如下:

**value** - 要检查的值。

返回值

如果值为非数字 (NaN),则此方法返回“true”;否则返回“false”。

示例 1

如果传递的值是数字,则此方法返回 **“false”**。

在下面的示例中,我们将 **“1234”** 值作为参数传递给 **isNaN()** 方法,以检查它是否为数字。

<html>
<head>
<title>JavaScript isNAN() Method</title>
</head>
<body>
<script>
   let value = 1234;
   document.write("Given value = ", value);
   document.write("<br>Value is 'NaN' or not? ", Number.isNaN(value));//return false
</script>
</body>
</html>

输出

上述程序返回“false”。

Given value = 1234
Value is 'NaN' or not? false

示例 2

这是 JavaScript Number **isNaN()** 方法的另一个示例。我们将 **“NaN”** 作为参数传递给此方法,以确定值“NaN”是否为非数字。由于它不是数字,因此它将返回 **true**。

<html>
<head>
<title>JavaScript isNAN() Method</title>
</head>
<body>
<script>
   let value = NaN;
   document.write("Given value = ", value);
   document.write("<br>Value is 'NaN' or not? ", Number.isNaN(value));//return true
</script>
</body>
</html>

输出

执行上述程序后,它将返回“true”。

Given value = NaN
Value is 'NaN' or not? true

示例 3

让我们比较将相同值传递给 **“isNaN()”** 和 **“Number.isNaN()”** 方法的结果。

<html>
<head>
<title>JavaScript isNAN() Method</title>
</head>
<body>
<script>
   let value = 'Hello';
   document.write("Given value = ", value);
   document.write("<br>The 'isNaN()' method returns: ", isNaN(value));//returns true
   document.write("<br>The 'Nunber.isNaN()' method returns: ", Number.isNaN(value));// returns false
</script>
</body>
</html>

输出

上述程序产生以下输出:

Given value = Hello
The 'isNaN()' method returns: true
The 'Nunber.isNaN()' method returns: false

示例 4

让我们看看此方法的 **实时** 用法。我们将根据此方法产生的结果在条件语句中使用该方法的结果来打印内部语句。

<html>
<head>
<title>JavaScript isNAN() Method</title>
</head>
<body>
<script>
   function verify(value){
      if(Number.isNaN(value)){
         return true;
      }
      else{
         return false;
      }
   }
   let val1 = NaN;
   let val2 = 122;
   let val3 = 'abc';
   document.write("'", val1, "' is (not a number)  = ", verify(val1));
   document.write("<br>'", val2, "' is (not a number)  = ",  verify(val2))
   document.write("<br>'", val3, "' is (not a number)  = ", verify(val3));
</script>
</body>
</html>

输出

执行上述程序后,它将显示以下语句:

'NaN' is (not a number) = true
'122' is (not a number) = false
'abc' is (not a number) = false
广告