【问题标题】:How to calculate the sum value of a set of arrays如何计算一组数组的总和值
【发布时间】:2017-08-21 11:19:20
【问题描述】:

美好的一天

我想知道是否有人可以帮助我计算数据数组的总和值。

var products = [{'size':'400' },{'size':'500' }] ;

angular.forEach(products, function(item){
   var total = 0;
   total += item.size++;
   return total;
});

我如何使用 $q.all() 语句来存储此信息,因为正在使用的文件下载部分忽略了我的 angular.forEach 语句,而只是检查单个项目。

【问题讨论】:

    标签: angularjs ionic-framework cordova-plugins file-transfer


    【解决方案1】:

    使用 reduce 代替 angular.forEach

    const productSum = products.reduce((sum, product) => sum + parseInt (product.size, 10), 0)

    $q.all 用于计算多个承诺。我认为你的方向是错误的。

    【讨论】:

      【解决方案2】:

      如果您想获得所有尺寸的总和,请使用 javascript reduce 方法。它将有效地返回所有大小的总和。

      var products = [{'size':'400' },{'size':'500' }] ;
      
      var sum = products.reduce((a,b) => parseInt(a.size) +  parseInt(b.size))
      
      console.log(sum)

      关于$q.all$q.all 通常用于一次发送多个 http 请求。如果您想将总和发送到您的服务,请将总和作为数据属性绑定到您的一个或所有 http 请求(取决于您的要求)。

      【讨论】:

      • 感谢大家对此的更新。这完美地工作。关于 $q.all 声明。我认为这将是一种更好的方法来获取总数,因为我正在循环遍历值,但是如果我使用您建议的方法,我可以在循环遍历值之前在一开始就获得总数。
      • 是的,现在不需要发送多个请求。在一个 http req 中发送总数
      猜你喜欢
      • 2021-08-04
      • 1970-01-01
      • 1970-01-01
      • 2018-08-05
      • 2019-05-16
      • 2021-05-23
      • 1970-01-01
      • 2012-05-08
      • 1970-01-01
      相关资源
      最近更新 更多