Test name | Executions per second |
---|---|
For loop + Array.push | 11180.5 Ops/sec |
For loop + Spread Operator | 9885.8 Ops/sec |
While + Array.push | 11469.3 Ops/sec |
While + Spread Operator | 9992.7 Ops/sec |
Array.from | 10061.9 Ops/sec |
const start = new Date("2020-06-01");
const end = new Date("2026-05-01");
let dates = [];
for (let currentDate = start; currentDate <= end; currentDate.setMonth(currentDate.getMonth() + 1)) {
dates.push(currentDate.toISOString().split("T")[0]);
}
const start = new Date("2020-06-01");
const end = new Date("2026-05-01");
let dates = [];
for (let currentDate = start; currentDate <= end; currentDate.setMonth(currentDate.getMonth() + 1)) {
dates = [dates, currentDate.toISOString().split('T')[0]];
}
const start = new Date("2020-06-01");
const end = new Date("2026-05-01");
let dates = [];
let currentDate = start;
while (currentDate <= end) {
dates.push(currentDate.toISOString().split("T")[0]);
currentDate.setMonth(currentDate.getMonth() + 1);
}
const start = new Date("2020-06-01");
const end = new Date("2026-05-01");
let dates = [];
let currentDate = start;
while (currentDate <= end) {
dates = [dates, currentDate.toISOString().split('T')[0]];
currentDate.setMonth(currentDate.getMonth() + 1);
}
const start = new Date("2020-06-01");
const end = new Date("2026-05-01");
let dates = Array.from(
{ length: (end.getFullYear() - start.getFullYear()) * 12 },
(_, i) => new Date(start.getFullYear(), start.getMonth() + i, 1).toISOString().split('T')[0]
);