我使用mongoose
从我的数据库查询对象,我想删除password
字段。
我正在执行:
delete user.password;
但user
对象仍然包含该字段。
User.findOne({
'id': id
},'-_id', function(err, user) {
// if there are any errors, return the error before anything else
if (err)
return done(err);
// if no user is found, return the message
if (!user)
return done(null, false);
user.comparePassword(password).then((res) => {
console.log(user);
delete user.password;
console.log(user);
return res ?
done(null, user) : done(null, false);
})
});
创建新对象并删除其对象的字段在同一环境中可以正常工作。
var x = {a:1, b:2};
console.log(x);
delete x.a;
console.log(x)
我做错了什么以及如何删除密码字段?