Удаление свойств объектов условно - PullRequest
3 голосов
/ 10 марта 2012

У меня есть объект, который может иметь или не иметь свойства, которые я хочу удалить;свойства добавляются во время выполнения.Вот как я пишу код:

if (MyObject.hasOwnProperty("SomeProperty")) {
   delete MyObject['SomeProperty'];
}

Если я удаляю условие для проверки, если свойство не существует, код не падает, но мне интересно, если это только потому, чтоЯ запускаю его в Chrome или, если это допустимый JavaScript.Другими словами, могу ли я написать delete MyObject['SomeProperty']; без оператора .hasOwnProperty и все будет хорошо, даже если у объекта не будет свойства.

1 Ответ

4 голосов
/ 10 марта 2012

Условное здесь не нужно.Операция delete ничего не сделает, если свойство не существует для объекта.Также не удаляются унаследованные свойства.

Удалить документацию

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...