Corregir la adición
Aquí hay un código que le pide al usuario dos números y muestra su suma.
Funciona incorrectamente. El resultado en el ejemplo a continuación es 12
(para valores de captura predeterminados).
¿Por qué? Arreglalo. El resultado debería ser 3
.
let a = prompt("¿Primer número?", 1);
let b = prompt("¿Segundo número?", 2);
alert(a + b); // 12
La razón es que la captura devuelve la entrada del usuario como una cadena.
Entonces las variables tienen valores "1"
y "2"
respectivamente.
let a = "1"; // prompt("¿Primer número?", 1);
let b = "2"; // prompt("¿Segundo número?", 2);
alert(a + b); // 12
Lo que debemos hacer es convertir las cadenas de texto a números antes de +
. Por ejemplo, utilizando Number()
o anteponiendo +
.
Por ejemplo, justo antes de prompt
:
let a = +prompt("¿Primer número?", 1);
let b = +prompt("¿Segundo número?", 2);
alert(a + b); // 3
O en el alert
:
let a = prompt("¿Primer número?", 1);
let b = prompt("¿Segundo número?", 2);
alert(+a + +b); // 3
Usar ambos unario y binario +
en el último ejemplo, se ve raro, ¿no?