• Matéria: Informática
  • Autor: filipegabrielandrade
  • Perguntado 3 anos atrás

Olá, estou com uma duvida, estou fazendo um teste com JavaScript, e fiz esse código:

let _val1 = 0;
let _val2 = 0;
let _resp = 0;
var respondBar1 = document.getElementById('bar1');
var respondBar2 = document.getElementById('bar2');

function calcular() {
_val1 = respondBar1.value;
_val2 = respondBar2.value;
_resp = _val1 + _val2;
console.log(_resp);
}

E quando eu execudo a função "calcular()" em vez de somar os valores, ele junta,
exemplo:

_val1: 5;
_val2: 15;
_resp: _val1 + _val2;

Resultado: 515

Mas o resultado que eu quero é 20, porque isso acontece?

Nota: Eu já tentei colocar +++ ou + e não funciona...

Respostas

respondido por: lucasbayer24p6hg4q
1

Resposta: Se ele está concatenando invés de somar é porque o valor de seus elementos Bar é do tipo String, você pode converter usando o construtor Number(), ele pode retornar a string convertida em número ou NaN (Not a number) caso a string não seja composta apenas por números.

_val1: "5";

_val2: "15";

_resp: Number(_val1) + Number(_val2);


filipegabrielandrade: aee, vlw mano, funcionou
Perguntas similares