猫鼬:为什么要将接收到的数据转换为对象

时间:2018-08-09 18:31:27

标签: express mongoose lodash

我当时正在学习猫鼬,而且我正在设法弄清楚。 为什么要使用toObject()将接收到的数据转换为对象,当它已经以对象形式出现时,

代码如下:

UserSchema.methods.toJSON = function() {
  var user = this;
  var userObject = user.toObject();

  return _.pick(userObject, ['_id', 'email']);
};

我不明白为什么使用toObject()从对象中提取有意义的属性。

谢谢

1 个答案:

答案 0 :(得分:0)

toObject是猫鼬文档方法Document.prototype.toObject(),其中:

  

将此文档转换为普通的javascript对象,准备存储在MongoDB中。

You can more about it here

之所以称为它,是因为需要一个普通的JS对象才能执行lodash _.pick,这将创建仅具有_idemail属性的新对象。 / p>