Как удалить свойство из объекта JavaScript при использовании Строгого режима
Прочитайте этот вопрос: Как удалить свойство из объекта JavaScript?
Однако мой код использует 'use strict';
в глобальном объявлении, что означает, что он присутствует во всем файле.
Оператор
delete
запрещен в строгом режиме (не действует). Документация
Как можно удалить свойства объектов при использовании строгого режима, не прибегая к клонированию и переплетению свойств, пропуская тот, который нужно удалить?
Обновление и уточнение:
Мне нужно удалить свойство из объекта перед его отправкой на сервер, который жалуется на неизвестные свойства.
Ответы
Ответ 1
delete
запрещен не в строгом режиме.
-
Удаление неустранимых свойств в строгом режиме вызывает ошибку. В нестрогом режиме он терпит неудачу. В любом случае это невозможно, кроме клонирования объекта.
-
Вы не можете удалять простые имена; генерируется синтаксическая ошибка. Если переменная является глобальной переменной, вы можете обойти ее так:
// Imagine we're global here.
var foo = 4;
delete foo; // syntax error
delete window.foo; // works.