за момент. js, моменты изменяемы. Клонируйте момент перед вычислением даты
https://momentjs.com/guides/# / lib-Concepts / mutability /
Вам нужно будет создать новый экземпляр момента или клон существующий при выполнении таких операций, как .add (), .subtract (), et c.
const moment = require("moment");
const today = moment();
// count back N days
const N = 3;
let i = 1;
let days = [];
// #1 - Create a new moment instance from today and add -i days
while (i <= N) {
const day = moment(today).add(-i, "days");
days.push(day);
i++;
}
console.log("Approach #1");
console.log({ days });
// #2 - A moment is mutable. So we use add() to mutate today by -1 days each iteration, clone the instance, and push to array
i = 0;
days = [];
while (i < N) {
const day = today.add(-1, "days").clone();
days.push(day);
i++;
}
console.log("Approach #2");
console.log({ days });