js 数组对象的拿值 原始数据: let arr= { 1: { lists: { 2020: {count: 0, year: 2020 }, 2021: {count: 3, year: 2021 }, 2022: {count: 2, year: 2022 }, 2023: {count: 1, year: 2023 }, }, name: '数据1', }, 2: { lists: { 2020: {count: 1, year: 2020 }, 2021: {count: 2, year: 2021 }, 2022: {count: 3, year: 2022 }, 2023: {count: 4, year: 2023 }, }, name: '数据2', }, 3: { lists: { 2020: {count: 3, year: 2020 }, 2021: {count: 2, year: 2021 }, 2022: {count: 3, year: 2022 }, 2023: {count: 4, year: 2023 }, }, name: '数据3', } } 这是后端返回的数据,前端需要处理数据 `let data1 =['数据1','数据2',''数据3]` 这个我已经得到了,就是里面的lists数据还没处理好。 希望得到: let data2 = ['2020','2021','2022','2023'] let data3 = ['0','3','2','1'] let data4 = ['1','2','3','4'] let data5 = ['3','2','3','4'] 遍历对象我用了for in, 还有其他好一些的方式吗? 用了for in去处理,lists数据没处理好 我用了 let arrKey =[] let year =[] for(var i in arr) { arrName.push(arr[i].typename) for (var s in arr[i].lists) { arrKey.push(arr[i].lists[s].count) year.push(arr[i].lists[s].year) } } 得到: arrName:['数据1','数据2',''数据3] 这个数据是对的 arrKey 和 year 数据出现很多重复的 