为什么在 JS 中 isNaN(null) == false?


isNan() 方法用于在 JavaScript 中检查是否存在未定义值,或可以说检查是否存在一个 NaN 对象。 

示例

要检查 JavaScript 日期是否有效,你可以尝试运行以下代码 -

<!DOCTYPE html>
<html>
   <body>
      <script>
         var date1, date2;

         date1 = new Date("2018/1/1");

         if( ! isNaN ( date1.getMonth() )) {
            document.write("Valid date1: "+date1);
         } else {
            document.write("<br>Invalid date1");
         }

         date2 = new Date("20181/1");

         if( ! isNaN ( date2.getMonth() )) {
            document.write("<br> Valid date2: "+date2);
         } else {
            document.write("<br>Invalid date2");
         }
      </script>
   </body>
</html>

isNaN(null) == false 在语义上是正确的。这是因为 null 不是 NaN。

更新日期:2020 年 6 月 23 日

543 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始
广告