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

123
Visualizações
¿Cómo afecta la precisión numérica de Javascript a los valores grandes?

Así que tengo un proyecto en el que trato tanto con números realmente pequeños como con números realmente grandes. Esencialmente, tengo un contador que cuenta desde 10 ^ -9 más o menos. Eventualmente, llega a 1 y continúa contando hacia arriba por un factor muy pequeño, pero muy rápido.

Este contador representa una "moneda" en mi proyecto. Entonces, cuando el usuario presiona un botón, si el "costo" asociado con ese botón es más bajo que la moneda, el costo se resta de la moneda del usuario y se le entrega ese artículo. Esto es lo que quiero decir:

 if (currency >= itemCost) { items++ currency = currency - itemCost itemCost = itemCost * 2

Entonces, por ejemplo, al comienzo del juego, un valor de ejemplo de moneda y itemCost sería 0.000000003020 más o menos. Cuando se resta un costo a este nivel, el programa funciona según lo previsto. Sin embargo, cuando paso 1, ~A VECES~, deja de funcionar ya veces no. Aunque a veces seguirá funcionando hasta que se rompa en alguna cantidad arbitraria. En este punto, también llamará a la función anterior si itemCost es mayor que la moneda (al menos según sus etiquetas correspondientes), dejando al usuario con una moneda negativa.

Me pregunto si esto sucede porque el número es demasiado largo para representar tanto los dígitos mayores que 1 como la cadena larga de dígitos decimales, como 2347.23482348982483, por ejemplo. ¿Existe un límite para la cantidad de dígitos que puedo representar con precisión en Javascript? ¿Estaría de acuerdo con redondear el número para decir 6 dígitos decimales después de pasar 1, o necesito buscar módulos que me ayuden con la precisión que necesito?

about 4 years ago · Juan Pablo Isaza
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