Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:100.0) Gecko/20100101 Firefox/100.0
Firefox 100
Windows
Desktop
2 years ago
Test name Executions per second
Math.max 59519.4 Ops/sec
Reduce 49068.2 Ops/sec
for element of array 31425.8 Ops/sec
Script Preparation code:
x
 
var values = new Array(5000);
for (let i = 0; i < values.length; ++i) {
    values[i] = i % 20;
}
Tests:
  • Math.max

     
    return Math.max(...values);
  • Reduce

     
    return values.reduce((prev, curr) => {
      if (curr > prev) return curr;
      return prev;
    }, 0);
  • for element of array

     
    let biggest = values[0];
    for (let value of values) {
      if (value > biggest) biggest = value;
    };
    return biggest;