ES2015之Number

164 阅读2分钟

这是我参与11月更文挑战的第15天,活动详情查看:2021最后一次更文挑战

数值

ES2015的标准增加了:Number的一些拓展,这篇文章我们就来了解一下什么是Number的一些拓展。

JavaScript 的 Number 对象是经过封装的能让你处理数字值的对象。Number 对象由 Number() 构造器创建。

如何使用

Number.EPSILON

两个可表示(representable)数之间的最小间隔。Number.EPSILON 属性表示 1 与Number可表示的大于 1 的最小的浮点数之间的差值。我们可以直接使用如下:

console.log(0.001 > Number.EPSILON); // true

EPSILON 属性的值接近于 2.2204460492503130808472633361816E-16,或者 2-52。

Number.isInteger()

Number.isInteger()  方法用来判断给定的参数是否为整数,使用如下:

Number.isInteger(0);         // true
Number.isInteger(1);         // true
Number.isInteger(-100000);   // true

Number.isInteger(0.1);       // false
Number.isInteger(Math.PI);   // false

Number.isInteger(Infinity);  // false
Number.isInteger(-Infinity); // false
Number.isInteger("10");      // false
Number.isInteger(true);      // false
Number.isInteger(false);     // false
Number.isInteger([1]);       // false

如果被检测的值是整数,则返回 true,否则返回 false。注意 NaN 和正负 Infinity 不是整数。

Number.isNaN()

Number.isNaN()  方法确定传递的值是否为 NaN,并且检查其类型是否为 Number,使用如下:

Number.isNaN(NaN);        // true
Number.isNaN(Number.NaN); // true
Number.isNaN(0 / 0)       // true

NaN 最特殊的地方就是,我们不能使用相等运算符(==和 ===)来判断一个值是否是 NaN,因为 NaN == NaN 和 NaN === NaN 都会返回 false。因此,必须要有一个判断值是否是 NaN 的方法,所以ES2015就增加了此方法。

注意事项

在项目中,当我们需要用一个整数来做判断的时候,就可以使用Number.isInteger();当我们需要判断数据是不是 NaN的时候,就可以使用Number.isNaN()

总结

如果你想了解ES的其他特性,请移步到 ES2015+碎片化学习,每天都在向前走一步,这是所有文章的目录入口。