gpt4 book ai didi

javascript - 迭代 Mongoose findById

转载 作者:行者123 更新时间:2023-12-03 02:47:04 26 4
gpt4 key购买 nike

我有运行 Mongoose 并成功返回以下结果的代码。

为什么我不能执行以下操作并从我的对象中获取值?

Object.keys(result).forEach(function(record){
console.log("The value of result[record]: ", result[record]);
})

如何迭代此对象以获取不同的键来获取列表和对象中的值?

我正在使用普通的 JavaScript。但我不介意一些较新的 ES 选项。

{ owner: { fullName: 'xxx', userName: 'xxx' },
members: [ { userName: 'xxx', fullName: 'xxx', position: '' } ],
admins: [ 'xxx','ashg' ],
_id: 5a482302a469a068edc004e3,
type: 'xxxx',
name: 'xxxx xxxx',
descrip: 'xxxx',
startDate: '2018-01-01',
endDate: ''
}

这是我想要复制的一个更简单的示例,它的工作原理与预期完全一致:

var o={a:1,b:2,c:3};
var val;

Object.keys(o).forEach(function(key) {
val = o[key];
console.log(val);
});

Output: 1,2,3

最佳答案

假设result是一个Mongoose文档,你可以调用result.toObject()将其转换为普通的JS对象,这样你就可以有效地使用这样的方法>Object.keys 就可以了。

var o = result.toObject();
Object.keys(o).forEach(function(key) {
console.log(o[key]);
});

但您也可以使用eachPath文档架构的方法来获取文档属性并以这种方式进行迭代:

result.schema.eachPath((path, schemaType) => {
console.log(result[path]);
});

关于javascript - 迭代 Mongoose findById,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48056510/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com