SyntaxError: private fields can't be deleted
The JavaScript exception "SyntaxError: private fields can't be deleted" occurs whendelete
is used on aprivate element of a class or an object.
Message
SyntaxError: Private fields can not be deleted (V8-based)SyntaxError: private fields can't be deleted (Firefox)SyntaxError: Cannot delete private field X (Safari)
Error type
What went wrong?
There's code trying todelete
a private element (field or method) of an object or a class. This is forbidden by JavaScript—private elements cannot be added or removed on the fly.
Examples
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 }}