Estou construindo uma calculadora afins de aprendizado, e quando o usuario faz uma operação e aciona o botão resultado, o resultado do calculo deveria aparecer no input “tela”, porém não acontece nada no input fica apenas o calculo realizado pelo usuario sem resposta.
aqui está o meu arquivo Javascript.
`document.addEventListener(“DOMContentLoaded”, function(){
//Botões da calculadora.
document.getElementById("bot0").addEventListener("click", bot0);
document.getElementById("bot1").addEventListener("click", bot1);
document.getElementById("bot2").addEventListener("click", bot2);
document.getElementById("bot3").addEventListener("click", bot3);
document.getElementById("bot4").addEventListener("click", bot4);
document.getElementById("bot5").addEventListener("click", bot5);
document.getElementById("bot6").addEventListener("click", bot6);
document.getElementById("bot7").addEventListener("click", bot7);
document.getElementById("bot8").addEventListener("click", bot8);
document.getElementById("bot9").addEventListener("click", bot9);
document.getElementById("botPonto").addEventListener("click", botPonto);
//Botões operdores da calculadora.
document.getElementById("botMais").addEventListener("click", botMais);
document.getElementById("botMenos").addEventListener("click", botMenos);
document.getElementById("botVezes").addEventListener("click", botVezes);
document.getElementById("botDividir").addEventListener("click", botDividir);
document.getElementById("botResult").addEventListener("click", botResult);
//Botões Apagar.
document.getElementById("botLimparTudo").addEventListener("click", botLimparTudo);
document.getElementById("botLimUltimo").addEventListener("click", botLimUltimo);
//Objeto para manter controle dos dados e função para calcular.
let calcular = {
primeiroValor : 0,
segundoValor : 0,
funcaoOperador : null
};
//funções de excluir.
function botLimUltimo(){
var strng = document.getElementById("tela").value;
document.getElementById("tela").value = strng.substring(0, strng.lenght-1);
};
function botLimparTudo(){
document.getElementById("tela").value="";
calculo.primeiroValor = 0;
calculo.segundoValor = 0;
calculo.funcaoOperador = null;
};
//Definindo a função dos números.
function bot0(){
let atual = document.getElementById("tela").value+=0;
};
function bot1(){
let atual = document.getElementById("tela").value+=1;
};
function bot2(){
let atual = document.getElementById("tela").value+=2;
};
function bot3(){
let atual = document.getElementById("tela").value+=3;
};
function bot4(){
let atual = document.getElementById("tela").value+=4;
};
function bot5(){
let atual = document.getElementById("tela").value+=5;
};
function bot6(){
let atual = document.getElementById("tela").value+=6;
};
function bot7(){
let atual = document.getElementById("tela").value+=7;
};
function bot8(){
let atual = document.getElementById("tela").value+=8;
};
function bot9(){
let atual = document.getElementById("tela").value+=9;
};
function botPonto(){
let atual = document.getElementById("tela").value+=".";
};
//Definindo botôes de operações básicas.
function botMais(){
atual = document.getElementById("tela").value;
if(atual == 0){
alert("Digite os valores primeiro !");
}else{
atual = document.getElementById("tela").value += "+";
}
};
function botMenos(){
atual = document.getElementById("tela").value;
if(atual == 0){
alert("Digite os valores primeiro !");
}else{
atual = document.getElementById("tela").value += "-";
}
};
function botVezes(){
atual = document.getElementById("tela").value;
if(atual == 0){
alert("Digite os valores primeiro !");
}else{
atual = document.getElementById("tela").value += "*";
}
};
function botDividir(){
atual = document.getElementById("tela").value;
if(atual == 0){
alert("Digite os valores primeiro !");
}else{
atual = document.getElementById("tela").value += "/";
}
};
//função definindo operações
function somarValores (primeiroValor, segundoValor){
return primeiroValor + segundoValor;
};
function subtrairValores(primeiroValor, segundoValor){
return primeiroValor - segundoValor;
};
function multiplicarValores(primeiroValor, segundoValor){
return primeiroValor * segundoValor;
};
function dividirValores(primeiroValor, segundoValor){
if(segundoValor == 0){
return "Erro, divisão por zero !";
}else{
return primeiroValor / segundoValor;
}
};
//função que atribuui a operação correta do objeto
function atribuirOperacao (operador) {
if(operador == "+"){
calculo.funcaoOperador = somarValores;
} else if(operador == "-"){
calculo.funcaoOperador = subtrairValores;
} else if(operador == "*"){
calculo.funcaoOperador = multiplicarValores;
} else {
calculo.funcaoOperador = dividirValores;
}
};
let calculo = {
valorSalvo : null,
funcaoOperador : null
};
//Dando função para o botão resultado.
function botResult(){
if(!isNaN(tela.value) && calculo.funcaoOperador != null){
let result = calculo.funcaoOperador(calculo.valorSalvo, Number(tela.value));
tela.value = result;
calculo.valorSalvo = result;
calculo.funcaoOperador = null;
}
};
});`