SyntaxError: приватные поля нельзя удалить
Исключение JavaScript "SyntaxError: private fields can't be deleted" возникает, когда delete используется для приватного элемента класса или объекта.
Сообщение
SyntaxError: Private fields can not be deleted (V8-based) SyntaxError: private fields can't be deleted (Firefox) SyntaxError: Cannot delete private field X (Safari)
Тип ошибки
Что пошло не так?
Код пытается delete приватный элемент (поле или метод) объекта или класса. Это запрещено JavaScript — приватные элементы нельзя добавлять или удалять "на лету".
Примеры
class MyClass {
#myPrivateField;
deleteIt() {
delete this.#myPrivateField; // SyntaxError: private fields can't be deleted
}
}
class MyClass {
#myPrivateMethod() {
}
#deleteIt() {
delete this.#myPrivateMethod; // SyntaxError: private fields can't be deleted
}
}
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Cant_delete_private_fields