JSON.stringify不适用于NodeJs中的mongoose对象

时间:2016-01-07 07:45:42

标签: json node.js mongodb

我在控制台 mongoose 对象时遇到错误。 这是我的代码: -

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function () {
    console.log('Yea! we are connected.');
});
console.log(JSON.stringify(mongoose));

以下是错误消息: -

enter image description here

2 个答案:

答案 0 :(得分:2)

里面的mongoose模块有这个逻辑

Mongoose.prototype.Mongoose = Mongoose;

它使循环结构(对象自引用)。你不能默认字符串化圆形对象。如果您想使用JSON.stringify添加自定义逻辑句柄

JSON.stringify(obj,function(k,v){ //logic})

答案 1 :(得分:2)

您可能需要尝试 util.inspect(object) 方法,该方法返回对象的字符串表示形式:

var util = require('util');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function () {
    console.log('Yea! we are connected.');
});
console.log(util.inspect(mongoose, { showHidden: true, depth: null }));