MongoDB通过nodeJS中的索引更新文档的数组元素

时间:2017-02-14 10:14:23

标签: javascript arrays node.js mongodb meteor

如何在Meteor或nodeJS中增加MongoDB文档数组的特定元素的值?

说,我跟着文件:

{
    "_id" : "4tP6ewe4Z5kwYA3Je",
    "name" : "chutia",
    "address" : "shonir akhra",
    "itemCount" : "4",
    "items" : [ 
        "3", 
        "4",
        "13", 
        "24"
    ]
}

我需要增加n数组的items&n;元素。其中n是变量。

2 个答案:

答案 0 :(得分:1)

如此处https://docs.mongodb.com/manual/reference/operator/update/inc/所述, 你可以用点表示法增加数组中的元素。

以下示例将项目的第一个元素增加1。

db.<collection>.update(
 <query>,
 { $inc: { "items.0": 1 } }
)

答案 1 :(得分:1)

正确的方法是:

{$inc: {[`items.${idx}`]: 1}}

其中idx是数组索引。礼貌MasterAM's comment