Я использую Mongoose, и я хочу удалить свойство _id
из моего экземпляра Mongoose, прежде чем я отправлю ответ JSON клиенту.
Пример:
var ui = _.clone(userInvite);
delete ui["_id"];
console.log(JSON.stringify(ui)); //still has "_id" property, why?
] Предыдущее не сработало.
Однако, если я это сделаю:
var ui = JSON.parse(JSON.stringify(userInvite)); //poor man's clone
delete ui["_id"];
console.log(JSON.stringify(ui)); //"_id" is gone! it works!
Я не понимаю, почему вызов delete
для клонированного объекта с использованием Underscore не работает, но если я сделаю хакерский JSON.string / JSON.parse, он работает.
Есть какие-нибудь мысли по поводу такого поведения?