JavaScript中严格判断NaN的方法

我也在FreeCodeCamp上碰到这样一道题:

删除数组中的所有假值。

在JavaScript中,假值有false、null、0、”“、undefined 和 NaN。

对于NaN的判断,JS提供了函数isNaN()。但是使用isNaN()函数只能判断变量是否非数字,而无法判断变量值是否为NaN。

于是,应用NaN的性质:

> NaN === NaN;
false //永远返回false

我们就能使用 === 判断变量是否为NaN。只需判断变量是否与自身相等,若不等的情况,该变量的值即为NaN。

总结

以上所述是小编给大家介绍的JavaScript中严格判断NaN的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

您可能感兴趣的文章:

  • JS中判断null、undefined与NaN的方法
  • JS中判断null、undefined与NaN的方法
  • javascript使用isNaN()函数判断变量是否为数字
  • Javascript 中 null、NaN和undefined的区别总结
  • 关于js new Date() 出现NaN 的分析
  • JavaScript NaN和Infinity特殊值 [译]
  • Javascript中的isNaN函数使用说明
  • 使用JS判断是否数字和小数点组合的数字的两中方法比较(isNaN和逐判断)
  • JavaScript Undefined,Null类型和NaN值区别
(0)

相关推荐

  • javascript使用isNaN()函数判断变量是否为数字

    javascript中判断变量是否为数字的方法,这里主要介绍javascript里的 isNaN() 函数. 功能: isNaN() 函数用于检查其参数是否是非数字值. 语法: isNaN(x) x 必需.要检测的值. 返回值: 如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true.如果 x 是其他值,则返回 false. 说明: isNaN() 函数可用于判断其参数是否是 NaN,该值表示一个非法的数字(比如被 0 除后得到的结果). 如果把 NaN 与任何值(

  • Javascript中的isNaN函数使用说明

    isNaN函数 返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字). NaN 即 Not a Number isNaN(numValue) 必选项 numvalue 参数为要检查是否为 NAN 的值. 说明 假如值是 NaN, 那么 isNaN 函数返回 true ,否则返回 false . 使用这个函数的典型情况是检查 parseInt 和 parseFloat 方法的输入值. 还有一种办法,变量可以与它自身进行比较. 假如比较的结果不等,那么它就是 NaN . 这是

  • JavaScript NaN和Infinity特殊值 [译]

    1.NaN 在JavaScript中,NaN代表了"not a number".主要在解析字符串出现错误时会返回这个值: 复制代码 代码如下: > Number("xyz") NaNNaN 的名字是"not a number",不过也可以说是not not a number: 复制代码 代码如下: > NaN !== NaN true 它是一个数字!类型为"number" 复制代码 代码如下: > typeo

  • JS中判断null、undefined与NaN的方法

    写了个 str ="s"++; 然后出现Nan,找了一会. 收集资料如下判断: 1.判断undefined: var tmp = undefined; if (typeof(tmp) == "undefined"){ alert("undefined"); } 说明:typeof 返回的是字符串,有六种可能:"number"."string"."boolean"."object

  • Javascript 中 null、NaN和undefined的区别总结

    1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型. 代码 复制代码 代码如下: var a1; var a2 = true; var a3 = 1; var a4 = "Hello"; var a5 = new Object(); var a6 = null; var a7 = NaN; var a8 = undefined; alert(typeof a); //显示"u

  • 使用JS判断是否数字和小数点组合的数字的两中方法比较(isNaN和逐判断)

    下面例举如下:如果大家有更好的方法的话望大家提出更好的方法. 一:isNaN方法: isNaN()的意思是非数字,里面传入数字的话就返回false,传入的不是数字的话就返回true [空的话也是返回true,一个点也是返回true,点个数字组合返回的是false,说明是数字] 复制代码 代码如下: <script language="JavaScript"> function testNan(){ if(isNaN('xxx')){ alert('true'); }else

  • JavaScript Undefined,Null类型和NaN值区别

    一 Undefined 类型 只有一种值 undefined 以下三种情况typeof 返回类型为undefined 1. 当变量未初始化时 2. 变量未定义时 3. 函数无明确返回值时(函数没有返回值时返回的都是undefined) undefined 并不等同于未定义的值 typeof 并不真正区分是否是未定义 看以下示例代码: var oTemp; alert(typeof oTemp); // outputs "undefined" alert(typeof oTemp2);/

  • 关于js new Date() 出现NaN 的分析

    此NaN不为NaN: 程序代码如下: 复制代码 代码如下: var date =new Date(d); if(!date || !date.getFullYear) { return; } return S.Date.format(d,'yyyy-mm-dd');//格式化函数,跟此文无关 在其他浏览器下正常,但是在ie下,程序报错 在ie调试器下,发现date 为NaN,如图: 如果是NaN,那么if判断会返回true,会 return "",但是诡异的一幕发生了, 代码说明if判

  • JavaScript中严格判断NaN的方法

    我也在FreeCodeCamp上碰到这样一道题: 删除数组中的所有假值. 在JavaScript中,假值有false.null.0."".undefined 和 NaN. 对于NaN的判断,JS提供了函数isNaN().但是使用isNaN()函数只能判断变量是否非数字,而无法判断变量值是否为NaN. 于是,应用NaN的性质: > NaN === NaN; false //永远返回false 我们就能使用 === 判断变量是否为NaN.只需判断变量是否与自身相等,若不等的情况,该变

  • 详解在JavaScript中如何判断变量类型

    JavaScript是一个动态类型语言,在运行时获取变量类型是常用操作,由于JavaScript设计的问题,看似简单的问题,在JavaScript中可能并不简单,比如在社区中流传的下图,仔细看一下这些坑,即便是JavaScript老司机也经常翻车. 上图中typeof NaN会返回number,这可能和你想的不一样,在JavaScript准确的获取变量类型,并不简单,正因为如此,这个问题经常被用来考察面试者,由于程序=数据+算法,而基本数据是数据的基础,所以面试中考察类型也是合理的. 如果面试中

  • JavaScript中正则表达式判断匹配规则及常用方法

    字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在. 正则表达式是一种用来匹配字符串的强有力的武器.它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它"匹配"了. \d可以匹配一个数字                 '00\d'可以匹配'007' ,'\d\d\d'可以匹配'010' \w可以匹配一个字母或数字      '\w\w'可以匹配'js' \s可以匹配一个空格(也包括Tab等空白符) \DWS都是表示匹配与

  • JavaScript中关键字 in 的使用方法详解

    for-in循环应该用在非数组对象的遍历上,使用for-in进行循环也被称为"枚举". 对于数组 ,迭代出来的是数组元素 但不推荐,因为不能保证顺序,而且如果在Array的原型上添加了属性,这个属性也会被遍历出来,所以 最好数组使用正常的for循环,对象使用for-in循环 对于对象 ,迭代出来的是对象的属性: var obj = { "key1":"value1", "key2":"value2", &q

  • JavaScript中数组的22种方法必学(推荐)

    前面的话 数组总共有22种方法,本文将其分为对象继承方法.数组转换方法.栈和队列方法.数组排序方法.数组拼接方法.创建子数组方法.数组删改方法.数组位置方法.数组归并方法和数组迭代方法共10类来进行详细介绍 对象继承方法 数组是一种特殊的对象,继承了对象Object的toString().toLocaleString()和valueOf()方法 [toString()] toString()方法返回由数组中每个值的字符串形式拼接而成的一个以逗号分隔的字符串 [注意]该方法的返回值与不使用任何参数

  • 浅谈JavaScript 中有关时间对象的方法

    ECMAScript中的Date类型是在早期 Java 中的 Java.unile.Date 类基础上构建的.为此 Date 类型使用自 UTC (Coordinated Universal Time, 国际协调时间)1970年1月1日午夜开始经过的毫秒数来保存日期. 在这种数据存储格式下, Date 类型保存的日期能够精确到1970年1月1日之前或之后的285616年 •Date.parse(string) 接受一个表示日期的字符串参数,然后尝试根据这个字符串返回相应日期的毫秒数,不能转换则返

  • javascript中数组和字符串的方法对比

    前面的话 字符串和数组有很多的相同之处,它们的方法众多,且相似度很高:但它们又有不同之处,字符串是不可变值,于是可以把其看作只读的数组.本文将对字符串和数组的类似方法进行比较 可索引 ECMAScript5定义了一种访问字符的方法,使用方括号加数字索引来访问字符串中的特定字符 可索引的字符串的最大的好处就是简单,用方括号代替了charAt()调用,这样更加简洁.可读并且可能更高效.不仅如此,字符串的行为类似于数组的事实使得通用的数组方法可以应用到字符串上 如果参数超出范围或是NaN时,则输出un

  • JavaScript中关于class的调用方法

    PS:class的调用,其实是可以叠加的,当然了这要求样式不同的情况下,如果样式相同,则后一个样式会覆盖前一个样式. 1.举例如下: <div id="test" class="aaa bbb">测试关于class的调用</div> .aaa{ font-size:20px; color:red; } .bbb{ font-size:50px; color:green; } var test=document.getElementById('

  • Python Numpy:找到list中的np.nan值方法

    这个问题源于在训练机器学习的一个模型时,使用训练数据时提示prepare的数据中存在np.nan 报错信息如下: ValueError: np.nan is an invalid document, expected byte or unicode string. 刚开始不知道为什么会有这个,后来发现是list中存在nan值 下面是找到nan值的方法: 简单找到: import numpy as np x = np.array([2,3,np.nan,5, np.nan,5,2,3]) for

  • JavaScript中的全局属性与方法深入解析

    今天来补充JavaScript中的最后一部分内容,JavaScript中的全局属性和方法(函数). 1.全局属性 // 属性 // Infinity 代表正的无穷大的数值. // 在Javascript中,超出 1.7976931348623157E+103088 的数值即为Infinity,小于 -1.7976931348623157E+103088 的数值为无穷小. var num1 = 1.7976931348623157E+103088; var num2 = -1.7976931348

随机推荐