Underscore Клонирование объектов Mongoose и удаление свойств не работает?

Я использую 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, он работает.

Есть какие-нибудь мысли по поводу такого поведения?

8
задан JP Richardson 23 February 2012 в 18:28
поделиться