Es gibt ein Moment.js Plugin auf NPM namens frozen-moment - Sie könnten moment().freeze()
anstelle von Object.freeze(moment())
verwenden.
Ansonsten hat Vanille Moment.js eine clone
Methode, die Veränderlichkeit Probleme sollen Ihnen helfen, zu vermeiden, so könnte man so etwas tun:
var a = moment(),
b = a.clone(); // or moment(a)
UPDATE:
Es hat zwei Jahre seit ich diese Antwort geschrieben habe. In dieser Zeit ist eine weitere Bibliothek zum Arbeiten mit Daten aufgetaucht: https://date-fns.org/
Diese Bibliothek ist standardmäßig unveränderlich und folgt einer modularen, funktionalen Architektur, was bedeutet, dass sie besser für Tree Shaking und Client- Seitenbündelung. Wenn Sie an einem Projekt arbeiten, das Webpack auf der Client-Seite ausgiebig nutzt und feststellen muss, dass Moment.js Ihnen Probleme bei der Erstellung gibt, oder selbst wenn die Veränderlichkeit von Moment.js Ihnen viele Kopfschmerzen bereitet, dann Sie sollte date-fns
einen Versuch geben.
Und der Code sieht aus wie ...? Wenn Sie den Anfangswert speichern möchten, speichern Sie den Zeitwert, der mit der Methode * valueOf * verfügbar ist, oder die implizite Konvertierung in Zahl. – RobG
Sobald Ihre Variable gesetzt ist, wird sie gesetzt, sie wird nicht automatisch geändert, also schauen Sie sie lieber nicht wieder an –