ES6 number数值新增方法

ES6中Number新增数值方法

1. 十进制数以 二进制,八进制 表示

// es6中二进制以0b / 0B开头
console.log(0b001001100110011);
console.log(0B001001100110011);

// es6中八进制以0o/0O开头
console.log(0o111110111);
console.log(0O111110111);

注意: 0b或者0o不区分大小写

2. 判断 有限数/有尽数 值 isFinite()

 console.log(Number.isFinite(22)) // true
 console.log(Number.isFinite('22')) // false
 console.log(Number.isFinite(NaN)) // false  NaN不是具体数值,所以false(isNaN())
注意: 区分数值,必须为number类型

3. 判断数值是否为整数 isInteger()

 console.log(Number.isInteger(5)) // true
 console.log(Number.isInteger(5.0)) // true
 console.log(Number.isInteger(5.1)) // false
 console.log(Number.isInteger('5')) // false  
注意:isInteger函数接收的是数值 

4 . 判断 有效整数值 isSafeInteger()

 // 最大有效值 MAX_SAFE_INTEGER() ,最小有效值 MIN_SAFE_INTEGER() 
 console.log(Number.MAX_SAFE_INTEGER) // 9007199254740991
 console.log(Number.MIN_SAFE_INTEGER) // -9007199254740991
 // --------------------
 console.log(Number.isSafeInteger(10))        // true    
 console.log(Number.isSafeInteger("10"));     // false  
 console.log(Number.isSafeInteger("aa"));     // false  
 console.log(Number.isSafeInteger(NaN));      // false  
 console.log(Number.isSafeInteger(Infinity)); // false  

javaScript:数值在 -253 和 253 之前的数值(不包括两个区间) 是有效存储,超过区间数值无效存储

### ES6新增Number方法及其返回值 以下为ES6新增的`Number`对象相关方法列表及其返回值说明: 1. **`Number.isFinite()`** - 判断一个数值是否为有限数值(finite)。与全局函数 `isFinite()` 不同,它不会将非数字类型转换为数字。 - 返回值:布尔值 `true` 或 `false`[^4]。 ```javascript console.log(Number.isFinite(Infinity)); // false console.log(Number.isFinite(123)); // true ``` 2. **`Number.isNaN()`** - 用于判断一个值是否为 `NaN`。与全局函数 `isNaN()` 不同,它不会尝试将非数字类型转换为数字。 - 返回值:布尔值 `true` 或 `false`。 ```javascript console.log(Number.isNaN(NaN)); // true console.log(Number.isNaN('abc')); // false ``` 3. **`Number.parseInt()` 和 `Number.parseFloat()`** - 这两个方法分别等价于全局函数 `parseInt()` 和 `parseFloat()`,但属于 `Number` 对象的方法。 - 返回值:解析后的整数或浮点数。 ```javascript console.log(Number.parseInt("123abc")); // 123 console.log(Number.parseFloat("123.45abc")); // 123.45 ``` 4. **`Number.isInteger()`** - 判断一个数值是否为整数。 - 返回值:布尔值 `true` 或 `false`。 ```javascript console.log(Number.isInteger(123)); // true console.log(Number.isInteger(123.45)); // false ``` 5. **`Number.EPSILON`** - 表示1与大于1的最小浮点数之间的差值,用于精度比较。这不是一个方法,而是一个静态属性。 - 返回值:常量值 `Number.EPSILON`[^4]。 ```javascript console.log(Number.EPSILON); // 2.220446049250313e-16 ``` 6. **`Number.MIN_SAFE_INTEGER` 和 `Number.MAX_SAFE_INTEGER`** - 定义了安全整数的最小值和最大值,超出这个范围可能会导致精度丢失。它们是静态属性而非方法。 - 返回值:常量值 `Number.MIN_SAFE_INTEGER` 和 `Number.MAX_SAFE_INTEGER`。 ```javascript console.log(Number.MIN_SAFE_INTEGER); // -9007199254740991 console.log(Number.MAX_SAFE_INTEGER); // 9007199254740991 ``` 7. **`Number.isSafeInteger()`** - 判断一个数值是否为安全整数(在 `Number.MIN_SAFE_INTEGER` 和 `Number.MAX_SAFE_INTEGER` 范围内)。 - 返回值:布尔值 `true` 或 `false`。 ```javascript console.log(Number.isSafeInteger(9007199254740991)); // true console.log(Number.isSafeInteger(9007199254740992)); // false ``` 8. **`Math.trunc()`** - 去掉一个数的小数部分,返回其整数部分。虽然该方法定义在 `Math` 对象上,但它与 `Number` 方法紧密相关。 - 返回值:去掉小数部分后的整数[^4]。 ```javascript console.log(Math.trunc(123.456)); // 123 console.log(Math.trunc(-123.456)); // -123 ``` 9. **`Math.sign()`** - 返回一个数的符号:正数、负数还是零。同样,该方法定义在 `Math` 对象上,但与 `Number` 方法密切相关。 - 返回值:`1`(正数)、`-1`(负数)、`0`(正零)、`-0`(负零)或 `NaN`(非数字)[^4]。 ```javascript console.log(Math.sign(123)); // 1 console.log(Math.sign(-123)); // -1 console.log(Math.sign(0)); // 0 console.log(Math.sign(-0)); // -0 console.log(Math.sign('abc')); // NaN ``` --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值