我们可以通过isFinite
来判断。isFinite是JavaScript中的一个内置函数,它判断参数是否是一个有穷数,通过它,我们可以过滤掉NaN
和Infinity
但是由于isFinite
会把参数(比如字符串)转化成数字
isFinite("0") // 返回true
所以我们需要再通过typeof
来确保这种被转换的问题不会被漏掉
var isNum = function isNum(value) {
return typeof value === 'number' && isFinite(value)
}