ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## Number对象 Number对象是数值类型对应的包装对象(引用类型),可以作为构造函数使用,也可以作为工具函数使用。 * 作为构造函数,用于生成数值类型的对象 * 作为工具函数,可以把其他类型的数据转化为数值 > 但是Number()函数在将其他类型转化成数值类型时,有一些奇怪的规则,所以我们时常用parseInt()代替。 [Number()和parseInt()区别](https://www.cnblogs.com/hyuq/p/4131200.html) **关于parseInt()注意两点** ~~~ var i = 10; console.log(typeof i); // number var ni = new Number(10); console.log(typeof ni); // object console.log(Number(true)); // 1 var inStr1 = "1 a"; var inStr2 = "2 b"; console.log(parseInt(inStr1) + parseInt(inStr2)); // 3 console.log(Number(inStr1) + Number(inStr2)); // NaN console.log(Number("12")); ~~~ ### 1.Number对象的属性 `Number.NaN`:表示非数值。 `Number.MAX_VALUE`:表示最大的正数。 `Number.MIN_VALUE`:表示最小的正数。 `Number.MAX_SAFE_INTEGER`:表示能够精确表示的最大整数。 `Number.MIN_SAFE_INTEGER` :表示能够精确表示的最小整数。 `Number.POSITIVE_INFINITY`:正的无限。 `Number.MEGATIVE_INFINITY`:负的无限。 ~~~javascript console.log(Number.NaN); // NaN console.log(Number.MAX_VALUE); // 1.7976931348623157e+308 console.log(Number.MIN_VALUE); // 5e-324 console.log(Number.MAX_SAFE_INTEGER); // 9007199254740991 console.log(Number.MIN_SAFE_INTEGER); // -9007199254740991 console.log(Number.POSITIVE_INFINITY); // Infinity console.log(Number.NEGATIVE_INFINITY); // -Infinity ~~~ ### 2.Number对象的方法 `Number.toString()`:把数值类型转化为字符串 `Number.toPrecision()`:将数值转化为指定位数的有效数字 ~~~javascript var i = new Number(12.36); console.log(i.toPrecision(2)); // 12 console.log(i.toPrecision(3)); // 12.4 console.log(i.toPrecision(4)); // 12.36 console.log(i.toPrecision(5)); // 12.360 ~~~ `toPrecision方法用于四舍五入时会出现问题,跟浮点数不能精确的存储有关系。` `Number.toFixed()`:用于将一个数转化为指定位数的小数,返回这个小数对应的字符串 ~~~javascript var i = new Number(12.36); console.log(i.toFixed(1)); // 12.4 ~~~