我的NodeJS | Express应用程序内部的route.js文件中有GET请求正文。
await Furniture.findOne({ name: givenName }, async (err, result) => {
// make it pure object
var pureObject = result.toObject();
// return result
res.json({
pt: pureObject.pt,
en: pureObject.en,
pl: pureObject.pl
});
}).select("names -_id");
当我尝试打印时,即[console.log(pureObject.pt)
],它们是不确定的。
当我打印整个对象[console.log(pureObject)
]时,我得到的正是我想要的:
{名称:{pt:“ pt中的名称”,en:“ en中的名称”,pl:“ pl中的名称”}
此外:当我删除“ select”子查询时,我可以毫无问题地获得那些特定的属性。
那是为什么?我尝试了pureObject ['pt'],但显然也不起作用。
答案 0 :(得分:1)
由于console.log(pureObject)
提供以下输出:
{ names: { pt: 'name in pt', en: 'name in en', pl: 'name in pl' }
因此,您需要使用pureObject.names.pt
,即console.log(pureObject.names.pt)
。
为什么?从输出中可以清楚地看到pureObject
有一个对象names
,该对象具有pt
,en
和{{1} }。