Number与Infinity

2019-08-07  本文已影响0人  李霖弢

Number

静态属性
实例方法
var num = new Number(10); 
console.log(num.valueOf()); // 输出:10

Infinity

Infinity是一个Number类型的字面量,表示无穷大。当一个Number类型的值,在运算过程中超过了所能表示的最大值,就会得到无穷大(而非NaN)。

console.log(100 / 0); // Infinity
console.log(-100 / 0); // -Infinity
console.log(1e1000); // Infinity

通过Number.isFinite(n)可以判断一个值是否是有穷的。当n是Number类型时,只有它是正负InfinityNaN时,返回false,其他情况下返回true。
任何一个有穷数和Infinity加减的结果都是Infinity,因此Infinity === Infinity - 1
此外Infinity进行运算时,有时也会出现NaN

console.log(Infinity + Infinity); // Infinity
console.log(Infinity - Infinity); // NaN
console.log(Infinity * Infinity); // Infinity
console.log(Infinity / Infinity); // NaN
console.log(Infinity * 0); // NaN

基本数据类型与Number对象

typeof 1   //number
typeof new Number(1) //object
1 instanceof Number //false
new Number(1) instanceof Number //true

其中1是基本数据类型,不是引用数据类型,因此instanceof总为false
通过new Number(1)包装以后成为引用数据类型,可以判断为Number

上一篇下一篇

猜你喜欢

热点阅读