我想使用减少获得架构的总和。以下代码的作用不是将项目添加在一起,而是将它们并排放置。例如,20 + 30
应该等于50
,但是它却给了我02030
。
这些代码有问题吗?
Tracker.findById(req.params.id).populate("variations").exec(function(err, foundTracker){
if(err){
console.log(err);
}else{
const varSum = foundTracker.variations.reduce(function(sum, variation){
return sum + variation.varAmount;
}, 0);
foundTracker.varsum = varSum;
foundTracker.save(function(err, savedTracker){
Tracker和Variation是架构模型
最佳答案
当前您只是concatenating strings
,这就是为什么您没有获得正确的总和。使用parseInt(),您将获得正确的结果。
更改此:
sum + variation.varAmount
至
parseInt(sum) + parseInt(variation.varAmount);
关于javascript - 如何获得 Mongoose 属性(property)的总和?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50732269/