目前了解的解決辦法constoldList=[1,2,3,4,5,6,7]//使用reduce函數(shù)接受一個(gè)初始值{0:[],1:[],length:2},//初始值包含兩個(gè)空數(shù)組,和一個(gè)數(shù)組長(zhǎng)度(Array.from方法要求將對(duì)象轉(zhuǎn)數(shù)組時(shí)對(duì)象內(nèi)要有這個(gè)屬性)//在reduce函數(shù)內(nèi)根據(jù)索引做余2判斷,因?yàn)榉謨闪校?的加入第一個(gè)數(shù)組,余1的加入第二個(gè)數(shù)組//最后reduce返回遍歷完的對(duì)象{0:[1,3,5,7],1:[2,4,6],length:2}//使用Array.from({0:[1,3,5,7],1:[2,4,6],length:2})得到數(shù)組[[1,3,5,7],[2,4,6]]//解構(gòu)數(shù)組使用concat合并,完事constnewList=[].concat(...(Array.from(oldList.reduce((total,cur,index)=>{total[index%2].push(cur)returntotal},{0:[],1:[],length:2}))))console.log(newList)輸出[1,3,5,7,2,4,6]然后再將兩個(gè)數(shù)組合并,總之就是我想將[1,2,3,4,5,6]拆成[1.3.5]和[2,4,6]然后再合并成有什么最簡(jiǎn)潔,代碼最少的方法將[1,2,3,4,5,6]改為[1,3,5,2,4,6],最好只遍歷一次數(shù)組java代碼:List里面的對(duì)象元素,以某個(gè)屬性來分組,例如,以id分組,將id相同的放在一起:復(fù)制代碼//List以ID分組MapMapgroupBy=appleList.stream().collect(Collectors.groupingBy(Apple::getId));System.err.println("groupBy:"+groupBy);{1=[Apple{id=1,name='蘋果1',money=3.25,num=10},Apple{id=1,name='蘋果2',money=1.35,num=20}],2=[Apple{id=2,name='香蕉',money=2.89,num=30}],3=[Apple{id=3,name='荔枝',money=9.99,num=40}]}
新手上路,js,ES6有方便拆分?jǐn)?shù)組的方法嗎?1,2,3,4,5,6拆1.3.5和2,4,6,類似java8的groupingBy?大佬們有什么好的建議?
有只小跳蛙
2019-08-21 18:59:15