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?