esNaN、Number.isNaN、isFinite、Number.isFinite

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

Supongo que te gusta

Origin blog.csdn.net/weixin_42274805/article/details/129145804
Recomendado
Clasificación