[英]Remove value from Javascript object
所以我有一個從貓鼬那里得到的對象,它是一個用戶。 我想刪除哈希密碼字段,但似乎無法刪除它。
嘗試了以下內容:
apiRoutes.get('/user/:id', function(req, res, next) {
User.findById(req.params.id, function(err, post) {
if (err) return next(err);
delete post['password'];
res.json(post);
});
});
絕對有一個密碼字段,當我調試/控制台.log對象時,它會打印出密碼。
編輯:通過將選項傳遞給貓鼬調用來解決:
User.findById(req.params.id, '-password', function(err, post) { /* ... */ });
但是仍然不能解釋為什么刪除不起作用?
似乎貓鼬返回的對象不是實際的javascript對象。
我必須將其轉換為對象,以便對其使用基本功能:
apiRoutes.get('/user/:id', function (req, res, next) {
User.findById(req.params.id, function (err, post) {
if (err) return next(err);
post.toObject();
delete post.password;
res.json(post);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.