DEV Community

Cristian Fernando
Cristian Fernando

Posted on

Paracetamol.js馃拪| #74: Explica este c贸digo JavaScript

Explica este c贸digo JavaScript

console.log(typeof("22" - 0))
Enter fullscreen mode Exit fullscreen mode

A. number
B. string
C. object
D. TypeError

Respuesta en el primer comentario.


Discussion (1)

Collapse
duxtech profile image
Cristian Fernando Author • Edited on

Respuesta:
A. number

Podemos convertir un string valido a number tan solo restandole 0.
Es un hack interesante y una alternativa valida a usar el objeto Number, la funci贸n parseInt o el operador +.

El operador - solo cumple la tarea de realizar una resta en javascript, cuando se lo aplicamos a un string valido entonces el interprete tiene que convertir dicha cadena a number y luego realizar la operaci贸n, entonces nos aprovechamos de que el 0 es neutro aditivo para que la conversi贸n sea exitosa.

Si intentamos usar este hack con cadenas no num茅ricas la conversi贸n se realiza pero obtendremos un NaN como resultado, as铆 que mucho ojo con eso.

console.log(typeof("aaa" - 0)); // number
console.log(("aaa" - 0)); // NaN
Enter fullscreen mode Exit fullscreen mode