"use strict"; (function (factory) { if (typeof Benchmark !== "undefined") { factory(Benchmark); } else { factory(require("benchmark")); } })(function (Benchmark) { var suite = new Benchmark.Suite; suite.add("[...Array(1000)].map((_, i) => i)", function () { [...Array(1000)].map((_, i) => i) }); suite.add("Array(1000).fill(null).map((_, i) => i);", function () { Array(1000).fill(null).map((_, i) => i); }); suite.add("Array.from({ length: 1000 }, (_, i) => i);", function () { Array.from({ length: 1000 }, (_, i) => i); }); suite.on("cycle", function (evt) { console.log(" - " + evt.target); }); suite.on("complete", function (evt) { console.log(new Array(30).join("-")); var results = evt.currentTarget.sort(function (a, b) { return b.hz - a.hz; }); results.forEach(function (item) { console.log((idx + 1) + ". " + item); }); }); console.log("Fill JavaScript Array #jsbench #jsperf"); console.log(new Array(30).join("-")); suite.run(); });