Olá, Jorge. Como vai?
Analisando o seu código, identifiquei três pontos específicos que estão impedindo o funcionamento da sua soma. Em JavaScript, pequenos detalhes na escrita (sintaxe) fazem toda a diferença para o navegador entender o comando.
Aqui estão os ajustes necessários:
- O método Number: No seu código, você escreveu
number com "n" minúsculo. O correto em JavaScript é Number (com "N" maiúsculo). - Template Literals: Para usar a interpolação de variáveis com
${}, você não pode usar aspas comuns. É obrigatório o uso de crases (backticks), assim: `A soma entre...`. - Referência de Elementos: Certifique-se de que no seu HTML os campos de entrada tenham os IDs
txtn1 e txtn2, e o local do resultado tenha o ID res.
Aqui está o trecho corrigido para você copiar e testar:
function somar() {
var tn1 = document.getElementById('txtn1')
var tn2 = document.getElementById('txtn2')
var res = document.getElementById('res')
// O 'N' deve ser maiúsculo
var n1 = Number(tn1.value)
var n2 = Number(tn2.value)
var s = n1 + n2
// Utilize crases para que o ${} funcione corretamente
res.innerHTML = `A soma entre ${n1} e ${n2} é igual a **${s}**`
}
Uma dica extra: se você não converter os valores com Number(), o JavaScript pode acabar "juntando" os números como se fossem texto (ex: 1 + 1 viraria 11). Com essa conversão que você fez (corrigindo para o N maiúsculo), o cálculo funcionará perfeitamente!
Espero que possa ter lhe ajudado!