美文网首页
Js判断值是否是NaN

Js判断值是否是NaN

作者: 我是syq吖 | 来源:发表于2021-07-29 08:58 被阅读0次

方法一:window.isNaN()

window.isNaN 只对数值有效,如果传入其他值,会被先转成数值。比如,传入字符串的时候,字符串会被先转成NaN,所以最后返回true,这一点要特别引起注意。也就是说,isNaN为true的值,有可能不是NaN,而是一个字符串。(不是数值会先调用 Number 方法转化为数值)
isNaN本意是通过Number方法把参数转换成数字类型,如若转换成功,则返回false,反之返回true,它只是判断参数是否能转成数字,不能用来判断是否严格等于NaN。,如果要判断某个值是否严格等于NaN不能用这个方法

方法二:Number.isNaN(value)(ES6语法,存在兼容性问题)

ES6提供了Number.isNaN方法用来判断一个值是否严格等于NaN,首先判断 value 类型是不是 number;,如不是,直接返回false。2. 然后判断 value 是不是 NaN

推荐方法:

Number.isNaN = Number.isNaN || function(value) {
    return  (typeof value) === 'number' && window. isNaN(value);
}

补充知识:
NaN 是 JavaScript 之中唯一不等于自身的值
Object.is() 是 ES6 用来比较两个值是否严格相等,与严格比较运算符(===)的行为基本一致。除了对 +0 和 -0 以及 NaN 的判断

NaN === NaN         //false
Object.is(NaN, NaN) //true

+0 === -0           //true
Object.is(+0, -0)  //false

相关文章

  • Js判断值是否是NaN

    方法一:window.isNaN() window.isNaN 只对数值有效,如果传入其他值,会被先转成数值。比如...

  • JS中奇葩问题

    js 中NaN和NaN是不相等的,如果想判断一个value是否是NaN,可以使用isNaN(Value)

  • pandas 高级用法

    处理缺失值 缺失值是np.NaN判断是否NaN缺失pd.isnull(df).any()pd.notnull(df...

  • ES6-3

    1. . isNaN() 判断数值是否是 NaN 只跟值是否为 NaN有关, 与数据类型无关 2. Parse...

  • python中pandas库之null值和numpy库之0

    null值,即为缺失数据。 1 判断是否为NAN 2 删除nan值 3 填充数据 4 处理为0的数据

  • [pandas] 判断单个值是否是 nan

    pandas数据判断是否为NaN值的方式[https://blog.csdn.net/tongjinrui/art...

  • 数据类型和变量

    NaN是特殊的Number值与其他所有值都不相等,包括它自己. 唯一判断NaN的方法是isNaN()的值判断,值为...

  • Pandas_3 处理缺失值、数据透视表以及apply的用法

    1.处理缺失值 Pandas使用NaN(Not a Number)来表示缺失值 1.1判断是否存在缺失值以及缺失值...

  • JS精粹

    1. 基本数据 1.1 判断a是否为NaN 1.2 判断为false的值 false null undefined...

  • 判断一个变量是否是NaN

    判断一个数是否是NaN都会想到NaN===NaN 判断是否相等,可是这个方法是不行的。那为什么这个方法是不行的呢,...

网友评论

      本文标题:Js判断值是否是NaN

      本文链接:https://www.haomeiwen.com/subject/djazmltx.html