我想删除一个对象的属性,但属性没有得到根本删...的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'返回什么? – vault
'tagFound'从哪里来?如果密码字段来自HTML标签而不能删除。只有用户定义的属性才能被删除。至少在浏览器中就是这种情况,但可能类似的情况发生在节点中。 –
删除返回true。 tagFound来自mongoDB文档 – rbaprado