如何把数据扁平化处理

发布于 2022-09-11 18:47:42 字数 1979 浏览 25 评论 0

const arr={
    year:'2019',
    all:[
      {
        name:'a',
        test:[
        {month: "01", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
        {month: "02", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
        {month: "03", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
        {month: "10", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
        {month: "11", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
        {month: "12", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
        ],
      },
      {
        name:'b',
        test:[
          {month: "01", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
          {month: "08", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
          {month: "09", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
          {month: "10", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
          {month: "11", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
          {month: "12", jcjx: 25450.29, scx: 1747.98, zqx: 1917, ywx: 869.22},
        ],
      }
    ]
  }
  
  const data1 = [];
    for (let i = 0; i < arr.all.length; i++) {
      for(let j = 0; j < arr.all[i].test.length; j++ ) {
        data1.push({
          projectName: arr.all[i].name,
          [`jcjx_month_${arr.all[i].test[j].month}`]: arr.all[i].test[j].jcjx,
          [`scx_month_${arr.all[i].test[j].month}`]: arr.all[i].test[j].scx,
          [`zqx_month_${arr.all[i].test[j].month}`]: arr.all[i].test[j].zqx,
          [`ywx_month_${arr.all[i].test[j].month}`]: arr.all[i].test[j].ywx,
        });
      }
    }
  //得到如下样式:
  

clipboard.png

我想把同一个ProjectName的所有内容合并到一个对象中,变成包含2个对象的形式,我的代码要如何改进?求解惑。
{projectName:"a",jcjx_month_01:25450.29,.......jcjx_month_12:25450.29}
{projectName:"b",jcjx_month_01:25450.29,.......jcjx_month_12:25450.29}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

美男兮 2022-09-18 18:47:42

用了一个特别笨的方法暂时整出来了,期待大神的点拨!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文