ES6之数值的扩展(上)

2017-04-23  本文已影响0人  嘿喵heyMeow

Number.isNaN

我们知道isNaN曾是window下边的属性,用来判断是否是NaN(非数值))类型的。现在添加到Number对象下,也是同样的作用。所以我们需要注意的是它们的不同点:

window.isNaN(5);  // false
isNaN(5);  // false
isNaN('abc');  // 不能转换为数值类型,所以是NaN -->> true
Number.isNaN(5);  //  false
Number.isNaN('abc5');  // false

Number.isFinite

判断是否是非无穷,同样只对数值类型有效

Number.isFinite(5);  // true
Number.isFinite('abc');  // false

Number.parseInt & Number.ParseFloat

ES6 把全局下的parseInt 和ParseFloat也转移到了Number下边了,用法没有区别:

Number.parseFloat('ss2.15');  // NaN
Number.parseFloat('2.15ss');  // 2.15
Number.parseInt('2.15ss');  // 2

Number.isInteger

判断是否是整数,看几个例子就够了:

Number.isInteger(2);  // true
Number.isInteger(2.5);  // false
*特殊注意* Number.isInteger(3.0);  // true
Number.isInteger('abc');  // false
Number.isInteger('2a');  // false

Number.EPSILON

Number.EPSILON代表了一个极小的常量,通常用来判断浮点数的计算误差。那么这个极小常量有多小呢?console.log(Number.EPSILON); // 2.220446049250313e-16通过控制台输出我们看到Number.EPSILON的值。
我们知道浮点数在计算的时候回产生误差,所以在计算时通过判断差值是否小于这个Number.EPSILON极小常量来判断是否计算准确。

安全整数

ES6中引入了安全整数的概念,什么是安全整数?javascript能够处理的数据的范围是在-253到253之间,在这个范围内的数值就被称为是安全整数,超出了这个范围就被称为不安全。
ES6把这个范围的下限-2^53 定义为Number.MIN_SAFE_INTEGER,上线2^53定义为Number.MAX_SAFE_INTEGER,那么我们这么判断是否在这个范围内呢,直接用Number.isSafeInteger就可以判断是否在这个安全范围内了。

最后,跟大家分享一下我的个人博客地址:http://javascript404.com/
欢迎你的到来 ~ ~ ❤❤❤

上一篇下一篇

猜你喜欢

热点阅读