gpt4 book ai didi

javascript - 遍历mongodb中的数组文档

转载 作者:行者123 更新时间:2023-11-30 20:19:15 25 4
gpt4 key购买 nike

我有一个名为 cartItems 的 MongoDB 文档,它是一个数组。

"cartItems" : [    

{
"productID" : "2ae6b8013ade44ac60de872f",
"quantity" : 5
},

{
"productID" : "1ae2b8013ade32ac60de872d",
"quantity" : 5
},

{
"productID" : "6ae9b8023ade44ac60de8732",
"quantity" : 5
},

{
"productID" : "3ae9b96d3ade43ac60de8734",
"quantity" : 5
}
]

现在,我想遍历它并获取“productID”的值。我尝试使用 .length(后来意识到这是一件非常菜鸟的事情)并且它只给出了第一个 productID。

  var user = Cart.find({"_id":Meteor.userId()}).fetch()[0];
for(i=0;i<user.cartItems.length; i++){
var id = new Mongo.ObjectID(user.cartItems[i].productID);
console.log(id);
}

我也尝试过使用 $size,但由于我的文档是一个动态数组,我无法事先知道其中有多少产品。

帮助将不胜感激。

最佳答案

好吧,我对 mongoDB 没有任何经验,但这里有一个如何循环对象的每个元素的示例:
(我知道你的问题是循环 ,如果没有,请告诉我)

var user ={ "cartItems": [  
{
"productID": "2ae6b8013ade44ac60de872f",
"quantity": 5
},
{
"productID": "1ae2b8013ade32ac60de872d",
"quantity": 5
},
{
"productID": "6ae9b8023ade44ac60de8732",
"quantity": 5
},
{
"productID": "3ae9b96d3ade43ac60de8734",
"quantity": 5
}
]}

var cartItems = user.cartItems;
for (var item of cartItems){
let id = item.productID;
console.log("Id: " + id);
}

或许,对于 mongo,您可以使用 for..of 以相同的方式执行此操作:

var user = Cart.find({"_id":Meteor.userId()}).fetch()[0];
for(var item of user.cartItems){
let id = new Mongo.ObjectID(item.productID);
console.log(id);
}

对不起,如果我在这里说废话,因为正如我所说,我没有使用 mongo 的经验,但也许这会有所帮助......

关于javascript - 遍历mongodb中的数组文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51632466/

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