Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

318
Vistas
¿Cómo maneja el método V8 toString(radix) en Google Chrome o en Node.js los números de punto flotante?

El método funciona claramente con números enteros, por ejemplo

 (25).toString(2) = '11001' (25).toString(16) = '19' (25).toString(36) = 'p'

Pero ingresar flotantes da como resultado

 (0.1).toString(2) = '0.0001100110011001100110011001100110011001100110011001101' (0.1).toString(16) = '0.1999999999999a' (0.1).toString(36) = '0.3lllllllllm'

Se dice que V8 es un motor de código abierto. Sin embargo, no puedo encontrar la implementación exacta de este método en el repositorio para poder entenderlo. ¿Cómo maneja la función los flotadores?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

(Desarrollador V8 aquí.)

El enlace de @pilchard es correcto; más específicamente, la función que está buscando es DoubleToRadixCString .

La observación de que 0.1 (decimal) es una fracción no terminante en su representación binaria (que es, por supuesto, cómo se almacenan los dobles dentro de las computadoras) es una buena ilustración de la razón subyacente por la que 0.1 * 3 == 0.30000000000000004 : la no las fracciones terminales necesariamente se cortan en algún punto, lo que constituye un error de redondeo, y algunas operaciones hacen visibles estos errores de redondeo. Es el equivalente binario de un efecto similar en decimal: cuando representa 1/3 como "0.333333" (eligiendo arbitrariamente 6 dígitos como la longitud representada, pero si solo corta después de 100 dígitos, eso realmente no cambiaría nada), y multiplica eso por 3, obtienes "0.999999", no 1.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda