const mongoose = require('mongoose')mongoose.connect('mongodb://localhost/test')const A = mongoose.model('A', new mongoose.Schema({name: String}))A.create({name: 'aaa'}, (err, doc) => { console.log(doc) // { _id: 5ae424bdcc21a02b700f9342, name: 'aaa', __v: 0 } doc.toObject = o => 0 console.log(doc) // 0})// ------------------------------------A.create({name: 'aaa'}, (err, doc) => { console.log(doc) // { _id: 5ae42509ae09661d681416f8, name: 'aaa', __v: 0 } doc.toObject = 0 console.log(doc) // 报错: TypeError: this.toObject is not a function})
1 回答

潇湘沐
TA贡献1816条经验 获得超6个赞
是调用了toString。
Document.prototype.inspect = function(options) {
var isPOJO = options &&
utils.getFunctionName(options.constructor) === 'Object';
var opts;
if (isPOJO) {
opts = options;
opts.minimize = false;
}
return this.toObject(opts);
};
/**
* Helper for console.log
*
* @api public
* @method toString
* @memberOf Document
*/
Document.prototype.toString = function() {
return inspect(this.inspect());
};
添加回答
举报
0/150
提交
取消