Pq se não colocar o "parseInt" ao invés de somar ele apenas junta os numero?
ex: primeiro numero: 5 segundo numero: 10 resultado: 105
Pq se não colocar o "parseInt" ao invés de somar ele apenas junta os numero?
ex: primeiro numero: 5 segundo numero: 10 resultado: 105
Oi, Tiago! Tudo bem?
Isso ocorre devido à uma característica muito importante de funcionamento da linguagem JavaScript.
O JavaScript é uma linguagem de programação dinamicamente tipada, o que significa que o tipo de uma variável pode ser alterado durante a execução do programa. Dessa forma, quando somamos duas variáveis, o JavaScript tenta adivinhar o que queremos fazer, de forma que, se ambas as variáveis são números, ele irá somá-las, porém, se uma ou ambas são strings (texto), ele irá concatená-las (juntá-las).
Quando inserimos os números através de um prompt, o JavaScript interpreta esses números como strings, devido a isso, quando tentamos somar "5" e "10", o JavaScript entende que na verdade queremos concatenar as strings, resultando em "510".
Por isso, a função parseInt()
é usada para converter uma string que representa um número em um número inteiro. Pois dessa forma, se usarmos parseInt()
para convertermos as entradas antes de somá-las, o JavaScript irá entender que queremos realizar uma soma matemática, não uma concatenação de strings.
Por exemplo:
var primeiroNumero = parseInt(prompt("Digite o primeiro número"));
var segundoNumero = parseInt(prompt("Digite o segundo número"));
alert("O resultado é: " + (primeiroNumero + segundoNumero));
Nesse código, parseInt()
está convertendo as strings inseridas pelo usuário em números inteiros, permitindo que a soma seja realizada corretamente.
Espero ter ajudado! Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!
Um forte abraço e bons estudos!