现在有如下的数组,我要转换为数据格式

data() {
            return {
                arr: [{
                        data: [1, 2, 3, 4],
                        name: "文字"
                    },
                    {
                        data: [1, 2, 4, 5],
                        name: "热巴"
                    },
                    {
                        data: [1, 8, 3, 2],
                        name: "大大"
                    }
                ]
            }
        },

我要转换为

    arr: [{
                        data: [1, 1,1],
                        name: "文字"
                    },
                    {
                        data: [2,2,8],
                        name: "热巴"
                    },
                    {
                        data: [3,4,3],
                        name: "大大"
                    }
                ]

data的长度和arr的长度一定会是一致的,
把data下的所有的下标为0的拿到第一个对象下的一个数组data里面,所有的下标为1的拿到第二个对象下的一个数组data里面,以此类推

阅读 1.1k
1 个回答

这样?

const data = [{
  data: [1, 2, 3, 4],
  name: "文字"
}, {
  data: [1, 2, 4, 5],
  name: "热巴"
}, {
  data: [1, 8, 3, 2],
  name: "大大"
}]

let arr = []

for (let i = 0; i < data.length; i++) {
  arr.push({ name: data[i].name, data: data.map(item => item.data[i]) })
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题