Я пытаюсь удалить свойство объекта, но свойство не удаляются вообще ...Javascript удалить object.property не работает
Что у меня есть:
var tagFound = yield tags.findById(this.params.tagId);
debug('prior delete: %j', tagFound);
delete tagFound.password;
debug('after delete: %j', tagFound);
Что я получаю:
api_v1 prior delete: {"_id":"55e064e9727b44c32a262c0f","expires":"2015-08-29T13:40:57.673Z","password":"$2a$08$hucJyHIU5gholAB1L.wVKeFoTmvFho9xFiJAAvmwmtKphLuJ9Hq4K","type":"free","name":"teste","__v":0,"visible":true,"locations":[{"latitude":65.9667,"longitude":-18.5333,"_id":"55e064e9727b44c32a262c10","timestamp":"2015-08-28T13:40:57.572Z"}]}
api_v1 after delete: {"_id":"55e064e9727b44c32a262c0f","expires":"2015-08-29T13:40:57.673Z","password":"$2a$08$hucJyHIU5gholAB1L.wVKeFoTmvFho9xFiJAAvmwmtKphLuJ9Hq4K","type":"free","name":"teste","__v":0,"visible":true,"locations":[{"latitude":65.9667,"longitude":-18.5333,"_id":"55e064e9727b44c32a262c10","timestamp":"2015-08-28T13:40:57.572Z"}]}
Возможно, мои глаза слишком устали, но я просто не могу понять это, не видит ли кто-нибудь что-то очевидное, что мне здесь не хватает?
Обновление: Я положил это в http://jsfiddle.net/fc8mohwp/, проблема в том, что он работает там, но не здесь (iojs). Должны ли быть какие-то различия?
Что делает 'delete' return? – vault
Откуда «tagFound»? Если поле пароля выводится из HTML-тега, то оно не может быть удалено. Только пользовательские свойства могут быть удалены. По крайней мере, это так в браузере, но, вероятно, что-то подобное происходит в узле. –
Удалить возвращает true. tagFound происходит из документа mongoDB – rbaprado