JavaScript ES6中 Number.isFinite() 和 Number.isNaN()
本文介绍了JavaScript ES6中 Number.isFinite() 和 Number.isNaN()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
最近在学习ES6,关于数值扩展这有点疑问。
ES6在Number对象上提供两个方法:Number.isFinite() 和 Number.isNaN()
与ES5不同在于取消了先调用一次Number()将非数值转化为数值后再判断。
注意:两个方法与传统的 isFinite() 和 isNaN() 方法区别在于,传统方法先调用 Number() 将非数值的值转为数值,再判断。这两个方法只对数值有效,非数值一律返回 false。
不太理解为什么要这么做,我觉得先调用一次Number()将非数值转化为数值后再判断不是应该更好吗?
解决方案
可以看看MDN的描述
而isFinite的你可以比较下Number.isFinite(true)和isFinite(true)就知道了。当然,Number.isFinite("")和isFinite("")也可以。
这篇关于JavaScript ES6中 Number.isFinite() 和 Number.isNaN()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文