SyntaxError: private fields können nicht gelöscht werden
Die JavaScript-Ausnahme "SyntaxError: private fields können nicht gelöscht werden" tritt auf, wenn delete bei einer privaten Eigenschaft einer Klasse oder eines Objekts verwendet wird.
Nachricht
SyntaxError: Private fields can not be deleted (V8-based) SyntaxError: private fields can't be deleted (Firefox) SyntaxError: Cannot delete private field X (Safari)
Fehlertyp
Was lief schief?
Es gibt Code, der versucht, eine private Eigenschaft (Feld oder Methode) eines Objekts oder einer Klasse zu löschen. Dies ist in JavaScript verboten—private Eigenschaften können nicht spontan hinzugefügt oder entfernt werden.
Beispiele
js
class MyClass {
#myPrivateField;
deleteIt() {
delete this.#myPrivateField; // SyntaxError: private fields can't be deleted
}
}
js
class MyClass {
#myPrivateMethod() {
}
#deleteIt() {
delete this.#myPrivateMethod; // SyntaxError: private fields can't be deleted
}
}