将mongodb对象转换为javascript对象

将mongodb对象转换为javascript对象,javascript,node.js,mongodb,Javascript,Node.js,Mongodb,启动另一个node.js模块时,我会将一个配置文件传递给它。配置文件包含以下json: "resolution": { "activated": true, "types": [ {"of": 23} ] } 当我在被调用的node.js模块中打印接收到的类型数组时,它看起来像 console.log('types array: '+ this.config.resolution.types) //output types ar

启动另一个node.js模块时,我会将一个配置文件传递给它。配置文件包含以下json:

    "resolution": {
      "activated": true,
      "types": [
      {"of": 23}
      ]
    }
当我在被调用的node.js模块中打印接收到的类型数组时,它看起来像

console.log('types array: '+ this.config.resolution.types) 
//output
types array: [object Object]
如果我尝试使用
JSON.stringify()
打印文本,我会得到以下结果

[{"of":23}]
当我尝试用从mongodb数据库重试的列表替换类型数组时,问题就开始了。我的代码如下所示:

“决议”:{ “激活”:正确, “类型”:[ 保存类型 ] }

现在,当我打印收到的类型配置时,它如下所示:

types array: { _id: 5ab9fe8fd1f64303cd98f122, of: 23, __v: 0 }
并且被调用的节点模块无法使用此配置正常工作。如何将其投射到对象?我试着用

JSON.parse(savedTypes)
并获取错误

SyntaxError: Unexpected token _ in JSON at position 2

如果使用mongoose,我认为正确的形式是使用ToJSON()函数

否则,您可以使用JSON.parse(JSON.stringify(data));但我认为第一种形式更好


=)

或者,您可以使用javascript中的
.toObject()
方法将mongoose对象转换为javascript对象

这里有一个参考链接来挖掘更多信息


共享您的mongodb查询。为什么不在mongoose中使用lean(),user.find({}).lean()像this@MariyaJames对是的!=)但我不知道他是否需要猫鼬的东西。