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
}
}