decimal rounding toFixed vs Math.round (v34)

Revision 34 of this benchmark created by Stephen Irving on


Setup

var number = Math.random();

Test runner

Ready to run.

Testing in
TestOps/sec
Math.round string
'' + Math.round(number * 10) / 10
ready
toFixed
Number((number).toFixed(1));
ready
toFixed string
number.toFixed(1)
ready
Custom Function Out of Scope
const fixedToOne = function (num) {
num = Math.round(num * 10) / 10;
return num + (num % 1 === 0 ? '.0' : '');
}
function someOtherFunction() { return fixedToOne(number); }
someOtherFunction();
ready
Custom Function
function fixToOnePlace(num) {
  num = Math.round(num * 10) / 10;
  return num + (num % 1 === 0 ? '.0' : '');
}
fixToOnePlace(number);
ready
Math.round
Math.round(number * 10) / 10
ready
Custom Function Modified
function fixToOnePlace(num) {
  num = Math.round(num * 10) / 10;
  return num + (num % 1 ? '' : '.0');
}
fixToOnePlace(number);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.

  • Revision 1: published on
  • Revision 2: published on
  • Revision 3: published on
  • Revision 4: published on
  • Revision 5: published on
  • Revision 6: published on
  • Revision 7: published on
  • Revision 8: published on
  • Revision 9: published by Julian Diaz on
  • Revision 10: published on
  • Revision 16: published on
  • Revision 23: published by TJKoury on
  • Revision 27: published by Yanislav Igonin on
  • Revision 31: published by Stephen Irving on
  • Revision 32: published by Stephen Irving on
  • Revision 34: published by Stephen Irving on
  • Revision 45: published by Stephen Irving on
  • Revision 46: published by Stephen Irving on
  • Revision 50: published by Gust van de Wal on
  • Revision 51: published by Kesavamoorthi Subramanian on
  • Revision 52: published by Kesavamoorthi Subramanian on
  • Revision 53: published by Kesavamoorthi Subramanian on
  • Revision 54: published by Kesavamoorthi Subramanian on
  • Revision 55: published by Kesavamoorthi Subramanian on