isNaN y Number.isNaN
Ambos se utilizan para determinar si el parámetro es de tipo NaN.
El principio de implementación de isNaN es: a través del método Number (), intente convertir el parámetro en un tipo Number . Si tiene éxito, devuelve falso, si falla, devuelve verdadero.
isNaN simplemente juzga si el parámetro entrante se puede convertir en un número, no juzga estrictamente si el parámetro es igual a NaN .
Y Number.isNaN () juzgará si el parámetro entrante es un tipo de número (NaN también es un tipo de número especial) y si es estrictamente igual a NaN (===).
console.log(isNaN('123')) //fasle,字符串类型的123能转成数字,所以返回false
console.log(Number.isNaN('123')) //false,字符串类型的123不是NaN,所以返回false
console.log(Number.isNaN(123) // false
console.log(isNaN('NaN')) // true
console.log(isNaN('nAn')) // true
console.log(isNaN('测试')) //true 因为Number(字符串)会返回NaN
console.log(Number.isNaN('测试')) //false,字符串不是NaN,所以返回false
console.log(Number.isNaN(NaN)) //true
es finito, número.es finito
Ambos métodos se utilizan para determinar si el parámetro es finito o no.
Cuando el parámetro es infinito positivo ( Number.POSITIVE_INFINITY e Infinity ), infinito negativo ( Number.POSITIVE_INFINITY y -Infinity ), NaN. falso retorno
La diferencia entre isFinite y Number.isFinite es la misma que la anterior, y el parámetro predeterminado de Number.isFinite es un tipo de número. E IsFinite convertirá el parámetro a un tipo numérico antes de juzgar.
Para el método Number.isFinite(). Se deben cumplir los dos puntos siguientes para que sea verdadero.
El parámetro es numérico,
El argumento no es infinito/pequeño o NaN
console.log(Number.isFinite('123'))// false
console.log(Number.isFinite('abc')) //fasle
console.log(Number.isFinite(NaN)) // false
console.log(Number.isFinite(1)) // true
console.log(isFinite('123')) //true
console.log(isFinite('abc')) // fasle 因为Number('abc')是NaN
console.log(isFinite(NaN)) // false 同上
console.log(isFinite(-Infinity )) // false 因为Number(-Infinity)为-Infinity
Aviso
Number(null) // 0
Number('') // 0
console.log(isFinite(null )) //true