1 .ES6 在Number对象上,新提供了Number.isFinite()和Number.isNaN()两个方法
说明 :Number.isFinite()用来检查一个数值是否为有限的(finite),即不是Infinity。
注意,如果参数类型不是数值,Number.isFinite一律返回false。
例 :Number.isFinite(15) //true
2. Number.isNaN()用来检查一个值是否为NaN。
3. 如果参数类型不是NaN,Number.isNaN一律返回false。
它们与传统的全局方法isFinite()和isNaN()的区别在于,传统方法先调用Number()将非数值的值转为数值,再进行判断,而这两个新方法只对数值有效,Number.isFinite()对于非数值一律返回false, Number.isNaN()只有对于NaN才返回true,非NaN一律返回false。
4 .ES6 将全局方法parseInt()和parseFloat(),移植到Number对象上面,行为完全保持不变。
这样做的目的,是逐步减少全局性方法,使得语言逐步模块化 。
Number.parseInt===parseInt //true
Number.parseFloat===parseFloat //true
5 .Number.isInteger()用来判断一个数值是否为整数。
Number.isInteger(10) //true
Number.isInteger(10.0) //true
Number.isInteger(10.1) //false
注意 :如果参数不是数值,Number.isInteger返回false。
Number,isInteger('10') //false
特殊注意 0.1+0.2= 0.30000000000000004 != 0.3 (一个在2的53方之后的数用于计算得到的结果就不精确了)
1177

被折叠的 条评论
为什么被折叠?



