Javascript mongodb将循环结构转换为JSON

Javascript mongodb将循环结构转换为JSON,javascript,json,mongodb,Javascript,Json,Mongodb,我从控制台运行下一个命令,它返回序号对象,没有什么特别的: >> db.query.find({"user_id":"111"}) { "_id" : ObjectId("58bbf5bf17cc9100046bdff"), "query" : "my query", "user_id" : "111", "links" : [ ] } 但是下一个代码(为相同的用户id运行)在JSON上失败。stringify(results)使用将循环结构转换为JSON: var args =

我从控制台运行下一个命令,它返回序号对象,没有什么特别的:

>> db.query.find({"user_id":"111"})
{ "_id" : ObjectId("58bbf5bf17cc9100046bdff"), "query" : "my query", "user_id" : "111", "links" : [ ] }
但是下一个代码(为相同的
用户id运行)在
JSON上失败。stringify(results)
使用
将循环结构转换为JSON

var args = {'user_id': userId};
console.log("database: query.find(%s)", JSON.stringify(args));
db.collection('query').find(args, function(err, results){
    if(err) {
        console.error(JSON.stringify(err));
    } 
    console.log("results:", JSON.stringify(results));
});
为什么?

在这里找到了答案:

我刚刚把
添加到数组中


db.collection('query').find(args).toArray(函数(err,results){

您的结果中有ObjectId..JSON转换失败ObjectId@BibekSubedi它是由mongo本身自动生成的。你能提出一些解决方案吗?(但我不想自己生成id或使用mongo包装器)这可能有助于您使用mongoose或任何东西吗?那么您可能应该尝试添加
.lean()
。正如mongoose文档所述,使用lean选项true查询返回的文档是纯javascript对象,而不是mongoose文档。