es6数值扩展
时间: 2023-07-21 09:05:02 浏览: 108
JavaScript中ES6字符串扩展方法
ES6 引入了一些数值扩展,其中包括了新的数值类型(如二进制和八进制)、新的数学方法和常量。
1. 二进制和八进制
在 ES6 中,我们可以使用 `0b` 或 `0B` 前缀来表示二进制数,使用 `0o` 或 `0O` 前缀来表示八进制数。例如:
```javascript
let binary = 0b1010; // 二进制的 10
let octal = 0o777; // 八进制的 511
```
2. Number.isFinite()
`Number.isFinite()` 方法用于检查一个数值是否为有限数。与全局的 `isFinite()` 函数不同的是,`Number.isFinite()` 不会将非数值转换为数值。例如:
```javascript
Number.isFinite(Infinity); // false
Number.isFinite(-Infinity); // false
Number.isFinite(NaN); // false
Number.isFinite(123); // true
```
3. Number.isNaN()
`Number.isNaN()` 方法用于检查一个数值是否为 NaN。与全局的 `isNaN()` 函数不同的是,`Number.isNaN()` 只有在参数是数值且等于 NaN 时才返回 true。例如:
```javascript
Number.isNaN(NaN); // true
Number.isNaN('hello'); // false
Number.isNaN(123); // false
```
4. Number.parseInt()
`Number.parseInt()` 是 `parseInt()` 的一个新的方法,它将字符串转换为整数,并且只接受数字作为字符串的参数。例如:
```javascript
Number.parseInt('123'); // 123
Number.parseInt('123.45'); // 123
Number.parseInt('hello'); // NaN
```
5. Number.parseFloat()
`Number.parseFloat()` 是 `parseFloat()` 的一个新的方法,它将字符串转换为浮点数,并且只接受数字作为字符串的参数。例如:
```javascript
Number.parseFloat('3.14'); // 3.14
Number.parseFloat('3.14hello'); // 3.14
Number.parseFloat('hello'); // NaN
```
6. Number.MAX_SAFE_INTEGER 和 Number.MIN_SAFE_INTEGER
`Number.MAX_SAFE_INTEGER` 和 `Number.MIN_SAFE_INTEGER` 属性分别表示 JavaScript 中最大的安全整数和最小的安全整数。例如:
```javascript
Number.MAX_SAFE_INTEGER; // 9007199254740991
Number.MIN_SAFE_INTEGER; // -9007199254740991
```
7. Number.isSafeInteger()
`Number.isSafeInteger()` 方法用于检查一个数值是否为安全整数。安全整数是指符合以下两个条件的整数:
- 在 JavaScript 中能够精确表示。
- 绝对值不大于 `Number.MAX_SAFE_INTEGER`。
例如:
```javascript
Number.isSafeInteger(123); // true
Number.isSafeInteger(9007199254740992); // false,超出了安全整数范围
```
阅读全文