当前位置: 代码迷 >> 综合 >> ES6 —— 数字验证Number.isFinite、NaN验证、整数验证、整数和浮点数的转换、整数取值安全范围--05
  详细解决方案

ES6 —— 数字验证Number.isFinite、NaN验证、整数验证、整数和浮点数的转换、整数取值安全范围--05

热度:59   发布时间:2023-12-15 04:35:06.0

前端编程工作中对数字的操作是非常多的,如果你对数字操作的不好,就很难写出令人惊奇的程序,所以我们这节课重点学习一下ES6新增的一些数字操作方法。

二进制和八进制

二进制和八进制数字的声明并不是ES6的特性,我们只是做一个常识性的回顾,因为很多新人小伙伴会把他们当成字符串或者不知道是什么,所以这算是赠送的知识点。

二进制声明:0B

二进制的英文单词是Binary,二进制的开始是0(零),然后第二个位置是b(注意这里大小写都可以实现),然后跟上二进制的值就可以了。

let binary = 0B010101;
console.log(binary);

这时候浏览器的控制台显示出了21。

八进制声明:0O

八进制的英文单词是Octal,也是以0(零)开始的,然后第二个位置是O(欧),然后跟上八进制的值就可以了。

let b=0o666;
console.log(b);

这时候浏览器的控制台显示出了438。

 

数字判断和转换

数字验证Number.isFinite( xx )

可以使用Number.isFinite( )来进行数字验证,只要是数字,不论是浮点型还是整形都会返回true,其他时候会返回false。

let a= 11/4;
console.log(Number.isFinite(a)); // true
console.log(Number.isFinite('jspang')); // false
console.log(Number.isFinite(NaN)); // false
console.log(Number.isFinite(undefined)); // false

NaN验证

NaN是特殊的非数字,可以使用Number.isNaN()来进行验证。下边的代码控制台返回了true。

console.log(Number.isNaN(NaN));

判断是否为整数Number.isInteger(xx)

let a=123.1;
console.log(Number.isInteger(a)); // false

整数转换Number.parseInt(xxx)和浮点型转换Number.parseFloat(xxx)

let a='9.18';
console.log(Number.parseInt(a)); // 9
console.log(Number.parseFloat(a)); // 9.18

整数取值范围操作

整数的操作是有一个取值范围的,它的取值范围就是2的53次方。我们先用程序来看一下这个数字是什么.

let a = Math.pow(2,53)-1;
console.log(a); //9007199254740991

在我们计算时会经常超出这个值,所以我们要进行判断,ES6提供了一个常数,叫做最大安全整数,以后就不需要我们计算了。

最大安全整数

console.log(Number.MAX_SAFE_INTEGER);

最小安全整数

console.log(Number.MIN_SAFE_INTEGER);

安全整数判断isSafeInteger( )

let a= Math.pow(2,53)-1;
console.log(Number.isSafeInteger(a)); // false

总结:这节课我们学习了ES6数字的操作,方法很多,很零散,需要经常复习或者实战中慢慢熟悉。

  相关解决方案