text: function criaCalculadora() {
      return {
          display: document.querySelector('.display'),
          
          inicia() {
              this.cliqueBotoes();
              this.pressionaEnter();
          },
  
          pressionaEnter() {
              this.display.addEventListener('keyup', (e) => {
                  const el = e;
                  if (el.keyCode === 13) {
                      this.realizaConta();
                  }
              });
          },
  
          deleteOne() {
              this.display.value = this.display.value.slice(0, -1);
          },
  
          clearDisplay() {
              this.display.value = '';
          },
  
          realizaConta() {
              let conta = this.display.value;
  
              try {
                  conta = eval(conta);
                  
                  // if(!conta) {
                  //     alert('Conta inválida');
                  //     return;
                  // }
  
                  this.display.value = conta;
              } catch(e) {
                  alert('Conta inválida');
                  return;
              }
          },
  
          cliqueBotoes() {
              document.addEventListener('click', (e) => { // arrow function sempre aponta o this para a função "pai" e não para o "document"
                  const el = e.target;
  
                  if(el.classList.contains('btn-num')) {
                      this.btnParaDisplay(el.innerText);
                  }
  
                  if(el.classList.contains('btn-clear')) {
                      this.clearDisplay();
                  }
  
                  if(el.classList.contains('btn-del')) {
                      this.deleteOne();
                  }
  
                  if(el.classList.contains('btn-eq')) {
                      this.realizaConta();
                  }
  
                  this.display.focus();
              }); // bind(this) aponta para o objeto calculadora, não mais o document.
          },
  
          btnParaDisplay(valor) {
              this.display.value += valor;
          }
  
      };
  }
  
  const calculadora = criaCalculadora();
  calculadora.inicia();