Wie kann ich sicherstellen, dass die Werte meines Enums in JavaScript nicht geändert werden?
Hallo zusammen! Ich schreibe in JavaScript und bin auf ein Problem gestoßen: Ich erstelle ein Objekt, das ich als Enum für Bestellstatus verwende. Zum Beispiel:
```javascript
const OrderStatus = {
PENDING: 'pending',
SHIPPED: 'shipped',
DELIVERED: 'delivered',
CANCELLED: 'cancelled'
};
```
Aber mir ist aufgefallen, dass andere Entwickler im Team oder sogar ich selbst versehentlich den Wert dieses Objekts während der Laufzeit ändern können. Zum Beispiel schreibt jemand `OrderStatus.PENDING = 'new_pending'` und zerstört die gesamte Logik. In TypeScript gibt es normale Enums, aber wir schreiben in reinem JS.
Ich habe versucht, `Object.freeze()` zu verwenden, bin mir aber nicht sicher, ob dies ein 100%iger Schutz vor Änderungen ist. Vielleicht gibt es eine zuverlässigere Methode, um Enum-Konstanten unveränderlich zu machen? Wie organisiere ich Enums in JavaScript richtig, sodass sie weder versehentlich noch absichtlich geändert werden können? Ich brauche einen vollständigen Schutz auf Code-Ebene, sodass, wenn jemand versucht, den Wert zu ändern, entweder ein Fehler ausgelöst wird oder es einfach ignoriert wird.
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs