Explica este código JavaScript
Dificultad: Intermedio
const fn = (x) => x !== NaN && x !== Infinity && x !== -Infinity
console.log(fn("3"))
console.log(Number.isFinite("3"))
- A.
false,false - B.
false,true - C.
true,true - D.
true,false
Respuesta en el primer comentario.
Top comments (1)
Respuesta:
true,falseNumber.isFinite()(así con el contructorNumber) es la manera que tenemos en JavaScript para determinar si un número es real o no.Para JavaScript un número será real siempre y cuando sea diferente de
NaN, diferente deInfinityy diferente de-Infinity; como se ve en la funciónfn.La diferencia es que en nuestra función
fnJavaScript infiere por ejemplo la cadena"3"a3, y por ello nos datrue.En cambio cuando usamos
Number.isFinite()no hay inferencia de tipos, debemos pasarle un número para que haga bien su trabajo, por ello nos dafalse.