专栏首页web前端教室【JS高程】第3章 3.4.5(3)NaN(节选)

【JS高程】第3章 3.4.5(3)NaN(节选)

NaN,它的全称是 Not a Number,即非数值。用来表示“一个本来要返回数值的操作数,却未返回数值时的情况”。这样就不会报错了嘛。

在ECMAScript中,任何数值除以非数值都会返回NaN。

NaN有二个特点:

1、任何涉及到NaN的操作,都会返回NaN;

2、NaN与任何值都不相等,包括它自己;

根据这二个特点,ECMAScript定义了 isNaN()函数。

它的只有一个参数,可以是任何类型。这个函数会确定这个参数是不是“不是数值”。

大概思路与用法是这样:

1、如果参数可以转为数值,就返回false。意思是说这个参数,“是数值”。

2、如果参数不能转为数值,就返回true。意思是说,这个参数“不是数值”。

挺绕的哈,反着的。但从这个函数的名称来理解却也正常,isNaN嘛,

“是数值”,返回的false;

“不是数值”,却返回true;

<!-- -->

isNaN()方法也可以操作对象,

很奇怪哈,isNaN认为空数组是数值;

但有数字值的数组,isNaN却认为它不是数值。

为什么呢?原因也很简单。。。

本文分享自微信公众号 - web前端教室(webfeel)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-03-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 推荐几个好用的前端社区

    前端乱炖 http://html-js.com/ segmentfault http://segmentfault.com/ 前端网 http://www.w3...

    web前端教室
  • 【免费视频教程】webpack原理与实践【1】webpack预备知识

    打包工具帮你获得一些准备用于部署的js和css等,把它们转化为适合浏览器的可用的格式。

    web前端教室
  • 先行者计划--1109微课总结 | 《通过二个demo初识webPack》

    webpack,到底是什么呢? Webpack将所有静态资源都认为是模块, 比如JavaScript,CSS,LESS,图片,...,从而可以对其进行统一管理。...

    web前端教室
  • 基于thrift的微服务框架

    前一阵开源过一个基于spring-boot的rest微服务框架,今天再来一篇基于thrift的微服务加框,thrift是啥就不多了,大家自行百度或参考我之前介绍...

    菩提树下的杨过
  • 基于thrift的微服务框架

    前一阵开源过一个基于spring-boot的rest微服务框架,今天再来一篇基于thrift的微服务加框,thrift是啥就不多了,大家自行百度或参考我之前介绍...

    菩提树下的杨过
  • Actor模型是做什么的?

    问题 用户A的操作 (1)开始事务 (2)操作资源1 (3)操作资源2 (4)提交事务 用户B的操作 (1)开始事务 (2)操作资源2 (3)操作资源1...

    dys
  • CSV逗号分隔值格式文件(示例分析)

    Qt君
  • 前端面试题: 关于数值的扩展isNaN函数运行的结果

    舒克
  • JS高级测试: window.isNaN(“abc”) 和Number.isNaN(“abc”)的结果分别是?

    舒克
  • hash定位tab的代码

    lilugirl

扫码关注云+社区

领取腾讯云代金券