请问黄框的怎么快速处理成一维数组 [{ key1: '1月', key2: 19. key3: 19 .... }, { key1: '2月', key2: 5. key3: 4 .... },...]
请问黄框的怎么快速处理成一维数组 [{ key1: '1月', key2: 19. key3: 19 .... }, { key1: '2月', key2: 5. key3: 4 .... },...]
新答案:
[
{key1: '1月', key2: 1, key3: 2, key4: 3, key5: 4, key6: 5},
{key1: '2月', key2: 6, key3: 7, key4: 8, key5: 9, key6: 0},
]
js
代码const data = [
['1月', 1, 2, 3, 4, 5],
['2月', 6, 7, 8, 9, 0],
];
data.map(item => Object.fromEntries(item.map((v, idx) => ['key' + (idx + 1), v])));
旧答案:
{key1: '1月', key2: 1, key3: 2, key4: 3, key5: 4, key6: 5}
js
代码Object.fromEntries(['1月', 1, 2, 3, 4, 5].map((v, i) => ['key' + (i + 1), v]))
先截取数组1到12月份,再利用reduce进行处理
let arr = data.splice(3,15).map(item=>{
item.reduce((pre,i,index)=>{
pre['key' + (index + 1)] = i;
if(index == arr.length - 1){
pre = [pre]
}
return pre;
},{})
})
这是我的思路(直接放出我的代码把)
et arrJan = [{ key1: '1月', key2: 19, key3: 19 }, { key1: '2月', key2: 5, key3: 4 }, ...]
let arrFeb = [{ key1: '2月', key2: 6, key3: 2 }, { key1: '3月', key2: 8, key3: 12 }, ...]
let arrMar = [{ key1: '3月', key2: 9, key3: 21 }, { key1: '4月', key2: 15, key3: 8 }, ...]
let arrApr = [...]
let arrMay = [...]
let arrJun = [...]
let multiArr = [arrJan, arrFeb, arrMar, arrApr, arrMay, arrJun]
let mergedArr = multiArr.flat()
let result = mergedArr.map(item => [item.key1, item.key2, item.key3]).flat()
佩服楼上第一位朋友的代码,一定是算法高手,仅用四五行就解决了,看来要多多学习!
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决