Es gibt eine Menge guter Antworten hier, aber ich möchte nur in chime, dass bei der Verwendung von löschen, um eine Eigenschaft in JavaScript zu entfernen, ist es oft klug, zunächst prüfen, ob diese Eigenschaft existiert, um Fehler zu vermeiden.
z.B.
var obj = {"property":"value", "property2":"value"};
if (obj && obj.hasOwnProperty("property2")) {
delete obj.property2;
} else {
//error handling
}
Aufgrund der dynamischen Natur von JavaScript gibt es oft Fälle, in denen man einfach nicht weiß, ob die Eigenschaft existiert oder nicht. Die Prüfung, ob obj vor dem && existiert, stellt auch sicher, dass Sie keinen Fehler durch den Aufruf der Funktion hasOwnProperty() für ein undefiniertes Objekt erhalten.
Es tut mir leid, wenn dies nicht zu Ihrem speziellen Anwendungsfall passt, aber ich glaube, dass dies ein gutes Design ist, das bei der Verwaltung von Objekten und ihren Eigenschaften angepasst werden sollte.
0 Stimmen
Delete myObject.regex; // oder, delete myObject['regex']; // oder, var prop = "regex"; delete myObject[prop];