微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

reduce 函数中的累加器要么为空要么没有数组数据

如何解决reduce 函数中的累加器要么为空要么没有数组数据

以下是我想减少的数组

          [{
            "CIs": {
              "CIs": {
                "x1": false,"x2": true,"x5": false,"x3": true,"x4": true,},"Username": "dev1"
            }
          },​
          {
            "CIs": {
              "CIs": {
                "x3": true,"x1": false,"x5": true
              },"Username": "dev2"
            }
          }

          ]

这里我们将“用户名:dev1”两次(这些对象可以是 N 次),我想减少到

即结果数组

           [{
            "CIs": {
              "CIs": {
                "x3": true,"Username": "dev2"
            }
          }

          ]

问题是当我使用reduce函数和控制台“acc”时

Case 1: // acc 是 [] 空数组

 reduceRes=upl.reduce(function(acc,d){
   console.log("acc,d",acc,d)
  //some logic here
   return acc;},[])}

Case 2: // acc 是第一个对象 ie,"{ "CIs": { "CIs": { "x1": false,"Username": "dev1" }"

 reduceRes=upl.reduce(function(acc,d)
  //some logic here
   return acc;})}

"acc" 必须是 3 个对象的数组

我不明白为什么“acc”不是一个包含 3 个对象的数组

谁能告诉我我哪里出错了

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。