Math.max vs Math.max.apply vs loop (v3)

Revision 3 of this benchmark created on


Setup

var data = {
      columns: [
      ]
    };
    for (var i = 0; i < 100; i++) {
      data.columns.push({'number':Math.random()});
    }

Test runner

Ready to run.

Testing in
TestOps/sec
Math.max.apply
var array = [];
for (var i = 0; i < data.columns.length; i++) {
  array.push(data.columns[i].number);
}
Math.max.apply(null, array);
ready
if statement
var max = -Infinity;
for (var i = 0; i < data.columns.length; i++) {
  if (max < data.columns[i].number) {
    max = data.columns[i].number;
  }
}
ready
Math.max
var max = -Infinity;
for (var i = 0; i < data.columns.length; i++) {
  max = Math.max(max, data.columns[i].number);
}
ready

Revisions

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