Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

288
Visualizações
¿Por qué el número de mi calculadora Vanilla JS cambia en el dígito 17?

Es una calculadora básica hecha por el canal de youtube Web Dev Simplified. Hizo un tutorial de YouTube sobre él, lo seguí y básicamente hice lo mismo.

Tanto su calculadora de ejemplo como la mía tienen el mismo problema, donde si presiono cualquiera de los botones numéricos (por ejemplo, '1') 17 veces o más, los números ingresados después del dígito 16 se muestran como un número diferente por alguna razón (17 dígito se convierte en '2' y no en '1').

Lo hace con cualquier número ingresado. no entiendo porque

Adjunté un enlace de codepen para que pueda ver tanto su código como la salida del código.

Encontrará la salida de la pantalla en esta parte del código HTML:

 <div class="output"> <div data-previous-operand class="previous-operand"></div> <div data-current-operand class="current-operand"></div> </div>
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

es porque su número ha terminado que el entero agrega console.log() en la función getDisplayNumber y compara el registro y los datos de visualización

en el registro, parece 1.1111111111111111e+21 cuando está fuera del rango

¿Cuál es el valor entero más alto de JavaScript al que puede ir un número sin perder precisión?

 getDisplayNumber(number) { const stringNumber = number.toString() const integerDigits = parseFloat(stringNumber.split('.')[0]) const decimalDigits = stringNumber.split('.')[1] console.log(integerDigits) let integerDisplay if (isNaN(integerDigits)) { integerDisplay = '' } else { integerDisplay = integerDigits.toLocaleString('en', { maximumFractionDigits: 0 }) } if (decimalDigits != null) { return `${integerDisplay}.${decimalDigits}` } else { return integerDisplay } }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda