我使用async eachSeries迭代数组并更新集合
coll.find().toArray(function (err, doc) {
async.eachSeries(doc,
function (obj, cb) {
var arrayLength = headerval.length;
var total = 0;
for (var j = 0; j < arrayLength; j++) {
var val = headerval[j];
total += obj[val];
}
console.log(total)
obj[newcolumn] = total;
var oId = obj['_id']
delete obj['_id']
coll.update({
_id: oId
}, {
$set: obj
}, {
upsert: true,
multi: true
}, function (err, result) {
console.log(result)
cb(err);
});
},
function (err) {
}
);
});
console.log(total)
和console.log(obj)
正在打印预期结果。
console.log(result)
正在打印1
如果我打印result
它打印为空。但该系列没有得到更新。
doc
是mongo find的结果。
headerVal
由doc