Essa questão da concatenação do valor como string ao invés de somar no valor do saldo (que o instrutor abordou no final do vídeo) pode ser resolvido com JavaScript, ou em situações similares é melhor usar sempre TypeScript?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Essa questão da concatenação do valor como string ao invés de somar no valor do saldo (que o instrutor abordou no final do vídeo) pode ser resolvido com JavaScript, ou em situações similares é melhor usar sempre TypeScript?
Olá Mylena! Tudo bem?
Sim, é totalmente possível resolver esse problema com JavaScript, sem precisar recorrer ao TypeScript. O que acontece é que, quando você coleta os valores de um formulário, eles vêm como strings, e é necessário convertê-los para números antes de realizar operações matemáticas.
Por exemplo, para garantir que a soma seja feita corretamente, você pode usar a função parseFloat() ou Number() para converter a string em um número antes de realizar a operação. Algo parecido com o código abaixo:
let valor = parseFloat(inputValor.value); // ou Number(inputValor.value)
Com essa pequena alteração, quando você faz a operação saldo += valor;, o JavaScript irá somar os valores corretamente, pois ambos serão do tipo numérico.
Usar TypeScript pode ajudar a evitar esse tipo de erro, porque permite que você defina tipos para suas variáveis, o que ajuda a identificar problemas de tipo em tempo de desenvolvimento. No entanto, se você estiver trabalhando apenas com JavaScript, a conversão explícita dos tipos, como mostrado acima, é uma solução eficaz.
Conte sempre com o apoio do fórum em sua jornada :)
Um abraço e bons estudos!