Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida sobre Exercicio da soma dos números

Olá queria tirar uma dúvida sobre o ultimo exercício das escolhas dos números. Percebi que se não colocarmos a função parseInt , ele faz as somas dos numeros de maneira literal , exemplo 1+ 2 = 12 e faz a soma correta apenas se inserirmos. Porque isso ocorre? No demais , segue os outros exercicios feitos, sendo o ultimo que me gerou dúvida.

let titulo = document.querySelector('h1');
titulo.innerHTML = 'Hora do Desafio';

function clicarConsole() {
    console.log('O botão foi clicado')
} 

function exibirAlerta() {
    alert ('Eu amo JS')
}

function exibirPrompt() {
    let cidade = prompt('Digite o nome de uma cidade do Brasil que você gosta muito:')
    alert(`Estive em ${cidade} e lembrei de você`)
}

function exibirSoma(){
    let numero1 = parseInt(prompt('Digite o 1º numero:'));
    let numero2 =parseInt(prompt('Digite o 2º numero:'));
    let resultado = numero1 + numero2;
    alert(`${numero1} + ${numero2}= ${resultado}`);
}
2 respostas

Ao digitar qualquer coisa no prompt eles são armazenados na variável como String, e strings o sinal de soma é de concatenação, ou seja, 1 + 1 seria dado resposta 11, ao usar o parseInt você transforma string em number integer (número inteiro). Então sempre lembrar que prompt armazena string, mesmo que digite números, serão armazenados como string.

solução!

Quando você informa o número 1 e depois o 2, na verdade ele entende como uma string (apenas um conjunto de caractares), somando uma string temos uma concatenação, ex: 1 + 2 = 12 ou A + B = AB

A função parseInt está convertendo para número, por isso você tem o resultado da forma que deseja, ex: 1 + 2 = 3.