Number属性和方法整理(MDN)

本文详细介绍了JavaScript中的Number对象,包括其构造函数、属性、方法等,并解释了如何使用Number对象来处理数字值,以及一些重要的实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Number
JavaScript 的 Number 对象是经过封装的能让你处理数字值的对象。Number 对象由 Number() 构造器创建。JavaScript的Number类型为双精度IEEE 754 64位浮点类型。

new Number(value);
var a = new Number(‘123’); // a === 123 is false
var b = Number(‘123’); // b === 123 is true
a instanceof Number; // is true
b instanceof Number; // is false

参数
value
被创建对象的数字值。
描述
Number 对象主要用于:
如果参数无法被转换为数字,则返回 NaN。
在非构造器上下文中 (如:没有 new 操作符),Number 能被用来执行类型转换。
属性
Number.EPSILON
两个可表示(representable)数之间的最小间隔。
Number.MAX_SAFE_INTEGER
JavaScript 中最大的安全整数 (253 - 1)。
Number.MAX_VALUE
能表示的最大正数。最小的负数是 -MAX_VALUE。
Number.MIN_SAFE_INTEGER
JavaScript 中最小的安全整数 (-(253 - 1)).
Number.MIN_VALUE
能表示的最小正数即最接近 0 的正数 (实际上不会变成 0)。最大的负数是 -MIN_VALUE。
Number.NaN
特殊的“非数字”值。
Number.NEGATIVE_INFINITY
特殊的负无穷大值,在溢出时返回该值。
Number.POSITIVE_INFINITY
特殊的正无穷大值,在溢出时返回该值。
Number.prototype
Number 对象上允许的额外属性。

方法
Number.isNaN()
确定传递的值是否是 NaN。NaN == NaN 和 NaN === NaN 都会返回 false。因此,必须要有一个判断值是否是 NaN 的方法。和全局函数 isNaN() 相比,Number.isNaN() 不会自行将参数转换成数字,只有在参数是值为 NaN 的数字时,才会返回 true。
Number.isFinite()
确定传递的值类型及本身是否是有限数。
Number.isInteger()
确定传递的值类型是“number”,且是整数。
Number.isSafeInteger()
确定传递的值是否为安全整数 ( -(253 - 1) 至 253 - 1之间)。
Number.toInteger()
计算传递的值并将其转换为整数 (或无穷大)。

Number.parseFloat()
和全局对象 parseFloat() 一样。给定值被解析成浮点数。如果给定值不能被转换成数值,则会返回 NaN。
Number.parseIntparseInt(string, [radix]);
和全局对象 parseInt() 一样。解析一个字符串并返回指定基数的十进制整数, radix 是2-36之间的整数,表示被解析字符串的基数。
Number 实例
所有 Number 实例都继承自 Number.prototype。被修改的 Number 构造器的原型对象对全部 Number 实例都生效。

转换数字字符串为数字
Number(‘123’) // 123
Number(‘12.3’) // 12.3
Number(‘12.00’) // 12
Number(‘123e-1’) // 12.3
Number(’’) // 0
Number(null) // 0
Number(‘0x11’) // 17
Number(‘0b11’) // 3
Number(‘0o11’) // 9
Number(‘foo’) // NaN
Number(‘100a’) // NaN
Number(’-Infinity’) //-Infinity

下面的都返回 true
Number.isNaN(NaN); // true
Number.isNaN(Number.NaN); // true
Number.isNaN(0 / 0) // true

下面这几个如果使用全局的 isNaN() 时,会返回 true。
Number.isNaN(“NaN”);
// false字符串 “NaN” 不会被隐式转换成数字 NaN。
Number.isNaN(undefined); // false
Number.isNaN({}); // false
Number.isNaN(“blabla”); // false

下面的都返回 false
Number.isNaN(true);
Number.isNaN(null);
Number.isNaN("");
Number.isNaN(" ");
Number.isNaN(37);
Number.isNaN(“37”);
Number.isNaN(“37.37”);

摘抄自MDN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值