如何获得猫鼬财产的总和?

时间:2018-06-07 02:47:13

标签: javascript node.js express mongoose

我希望使用reduce来获取模式的总和。以下代码所做的不是将项目添加到一起,而是将它们放在一起。例如,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){

跟踪器和变体是架构模型

1 个答案:

答案 0 :(得分:2)

目前您只是concatenating strings,这就是为什么您没有得到正确的金额。使用parseInt(),您将获得正确的结果。

改变这个:

sum + variation.varAmount

parseInt(sum) + parseInt(variation.varAmount);