资讯专栏INFORMATION COLUMN

特殊数值

QLQ / 3067人阅读

摘要:前几篇已经了解了中的数组字符串和数字,中还有一些比较特殊的值,比如等,这些东西比较琐碎,但还是有必要了解一下下的啦。

前几篇已经了解了js中的数组、字符串和数字,js中还有一些比较特殊的值,比如Nan、null等,这些东西比较琐碎,但还是有必要了解一下下的啦。

一、null
有次提到过undefined和undeclared,前者表示已声明但未赋值,后者表示未声明,两者常用来表示空值。
null也表示空值,但它的意思是曾赋过值,但目前没有值。

二、NaN
NaN用英语来解释就是‘not a number’,可以将它理解为‘无效值’,但是你会发现有个有趣的点,用typeof看看它的数值类型,如下:

typeof NaN;    // 结果为 "number"

可能你会说英文解释不是说‘not a number’么,其实这两者都没错,只是这个英文名字容易引起误解而已啦,知道NaN的类型还是‘number’就好。
NaN还有一个特殊点,它和自身不相等,是唯一一个非自反的值(什么叫自反,x === x不成立,什么叫非自反, x !== x 成立),那要如何判断它是否是NaN呢,如下:

NaN === NaN; // false
isNaN(NaN);  // true
isNaN("string"); // true  这又是为什么呢,因为isNaN(),它参数为NaN,或不是数字,就会返回true
isNaN("");  // false 又一个有趣的结果,如果字符串为空,或数组为空,返回的却是false

let a = NaN;
a !== NaN; // 所以推荐这种方式来验证是否是NaN

typeof a === "number" && isNaN(a); // 或是用这种方式进行验证

js中的零值有两个,一个是0(或是+0),另一个是-0,会有这种情况,是为了防止符号位丢失,具体的我也不太清楚,平时没怎么用到,就没怎么深究,待以后再细细考究。
此篇就此结束。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/101331.html

相关文章

  • javascript之关键字,保留字, 变量及数据类型

    摘要:之关键字保留字变量及数据类型个人总结,分享也供自己日后查询变量中变量通过关键字来声明的。在使用声明变量但未对其加以初始化时,这个变量的值就是,例如在控制台输出是也就是未定义类型布尔类型该类型只有两个字面值和。 javascript之关键字,保留字, 变量及数据类型 个人总结,分享也供自己日后查询 1.变量 javascript 中变量通过var关键字(variable)来声明的。 变量...

    stormgens 评论0 收藏0
  • JavaScript-算数运算符

    摘要:浮点数运算余数运算符还可以用于浮点数的运算。这些语言中的幂运算符有着比其他的单目运算符如一元或一元更高的优先级。但是作为例外,在中,运算符被设计为比单目运算符优先级更低。 一、算术运算符 运算符 描述 例子 x 运算结果 y 运算结果 + 加法 x=y+2 7 5 - 减法 x=y-2 3 5 * 乘法 x=y*2 10 5 / 除法 x=y/2 2.5 5 ...

    lindroid 评论0 收藏0
  • JS基础学习03「表达式和运算符」

    摘要:函数定义表达式。对象创建表达式。需要注意的是,大多数运算符都是由标点符号表示的,比如和。也就是说,空字符串将被当作,布尔值将被当作。对于和,则分别调用函数并取得字符串和。 表达式 表达式是由数字、运算符、数字分组符号(如括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。JavaScript 表达式主要有以下几种形式: 原始表达式:常量、变量、保留字。 对象、数组初始...

    dcr309duan 评论0 收藏0
  • 高程(第三章) 基本概念

    摘要:十进制八进制八进制字面值的第一位必须是零,然后是数字序列。通常与方法的返回值相同由于在中是所有对象的基础,因此所有对象都具有这些基本的属性和方法。 1 语法 1.1 区分大小写 ECMAScript中的一切(变量、函数名和操作符)都区分大小写。 1.2 严格模式 ECMAScript 5 引入了严格模式(strict mode)的概念。严格模式是为JavaScript定义了一种不同的解...

    explorer_ddf 评论0 收藏0
  • 《JavaScript 闯关记》之表达式和运算符

    摘要:函数定义表达式。对象创建表达式。也就是说,空字符串将被当作,布尔值将被当作。如果有一个操作数是对象数值或布尔值,则调用它们的方法取得相应的字符串值,然后再应用前面关于字符串的规则。对于和,则分别调用函数并取得字符串和。 表达式 表达式是由数字、运算符、数字分组符号(如括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。JavaScript 表达式主要有以下几种形式: ...

    Render 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<