Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15
Safari 15
Mac OS X 10.15.7
Desktop
3 years ago
Test name Executions per second
Power function (small number) 4717864.5 Ops/sec
Power function (large number) 4559945.5 Ops/sec
Power function (very large number) 4894282.5 Ops/sec
Square root function (small number) 5005371.0 Ops/sec
Square root function (large number) 4798294.0 Ops/sec
Square root function (very large number) 4976414.0 Ops/sec
Script Preparation code:
AخA
 
// Javascript uses floats for numbers. Generaate some numbers in advance.
var smallNumber = Math.pow(2, 7) + Math.floor(Math.random() * Math.pow(2,7));
var largeNumber = Math.pow(2, 30) + Math.floor(Math.random() * Math.pow(2,30));
var veryLargeNumber = Math.pow(2, 60) + Math.floor(Math.random() * Math.pow(2,60));
Tests:
  • Power function (small number)

     
    Math.pow(smallNumber, 2);
  • Power function (large number)

     
    Math.pow(largeNumber, 2);
  • Power function (very large number)

     
    Math.pow(veryLargeNumber, 2);
  • Square root function (small number)

     
    Math.sqrt(smallNumber);
  • Square root function (large number)

     
    Math.sqrt(largeNumber);
  • Square root function (very large number)

     
    Math.sqrt(veryLargeNumber);