在es6中,可以利用Number对象的isFinite()方法来判断值是不是数字,该方法可以检测传入的参数值是否是一个有穷数字;语法“Number.isFinite(值)”。
本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。
ES6为我们提供了数字的判断的方法,具体看下面的代码
Number.isFinite 判断数字
Number.isFinite() 方法用来检测传入的参数是否是一个有穷数。
let a = 1 console.log(Number.isFinite(a)); // true console.log(Number.isFinite("beline")); //false console.log(Number.isFinite(NaN)); // false console.log(Number.isFinite(undefined)); // false
Number.isNaN 判断非数字
console.log(Number.isNaN(NaN)); // true console.log(Number.isNaN(1)); // false
Number.isInteger 判断是否为整数
let a = 66 console.log(Number.isInteger(a)); // true
如果需要判断是否为浮点型只需要在对象前加取反符号即可
let a = 111.77 console.log(!Number.isInteger(a)); // true
安全整数
在计算机数字类型的安全取值范围为2的53次方.
let num = Math.pow(2, 53) - 1; console.log(num ) // 9007199254740991
ES6为什么提供了最大安全整数和最小安全整数的常量,还可以通过isSafeInteger方法判断传入的值是否在安全整数范围内.在日常工作中,如果超出这个数,我们就需要把这个值转换成字符串给用户显示了
console.log(Number.MAX_SAFE_INTEGER) // 9007199254740991 console.log(Number.MIN_SAFE_INTEGER) // -9007199254740991 // 判断num是否在安全整数范围内 console.log(Number.isSafeInteger(num)) // true