Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

142
Views
Javascript> = comparación con dos números negativos que producen un resultado incorrecto

Me he encontrado con un comportamiento extraño en el que tanto antes como después de usar toFixed() el mismo número es visiblemente mayor que el otro (correcto). Sin embargo, la versión toFixed() produce una comparación incorrecta. Esto parece suceder cuando ambos números son negativos y >= es el operando.

 let lastVal = 0.091; let currentVal = 0.093; let newVal = 0.094; let oldSlope = lastVal - currentVal; let newSlope = currentVal - newVal; let oldSlopeFixed = (lastVal - currentVal).toFixed(16); let newSlopeFixed = (currentVal - newVal).toFixed(16); document.getElementById("one").innerHTML = "oldSlope = " + oldSlope + ", newSlope = " + newSlope; document.getElementById("two").innerHTML = "oldSlopeFixed = " + oldSlopeFixed + ", newSlopeFixed = " + newSlopeFixed; if ((newSlope) >= (oldSlope)) { document.getElementById("three").innerHTML = "newSlope >= oldSlope (correct)"; } if (!((newSlopeFixed) >= (oldSlopeFixed))) { document.getElementById("four").innerHTML = "newSlopeFixed < oldSlopeFixed (incorrect ... what???)"; }
 <!DOCTYPE html> <html> <body> <p id="one"></p> <p id="two"></p> <p id="three"></p> <p id="four"></p> </body> </html>

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

toFixed produce una cadena. No estás comparando números, estás comparando cadenas, que se comparan alfabéticamente.

 console.log(-0.001 <= -0.002) // false console.log('-0.001' <= '-0.002') // true

No use toFixed antes de los cálculos. Se utiliza cuando se realizan todos los cálculos y se intenta formatear un número para el consumo humano.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!