第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

新手上路,js,ES6有方便拆分?jǐn)?shù)組的方法嗎?1,2,3,4,5,6拆1.3.5和2,4,6,類似java8的groupingBy?大佬們有什么好的建議?

新手上路,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
目前了解的解決辦法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}]}
查看完整描述

2 回答

?
慕蓋茨4494581

TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個(gè)贊

這是題主按照答主思路寫的一個(gè)思路一樣,但實(shí)現(xiàn)不完全一樣的符合題主要求的答案
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]
已下為答主提供的實(shí)現(xiàn)方式及思路,謝謝------------------------------------------------------
constarr=[1,2,3,4,5,6]
constnewArr=[...arr.filter(e=>e%2),...arr.filter(e=>e%2===0)]
其實(shí)也沒必要追求這點(diǎn)性能,既要代碼少,又要效率高...我覺得乖乖寫for循環(huán)最好了
嗯...
constobj=arr.reduce((a,b)=>{
a[b%2].push(b)
returna
},{0:[],1:[]})
constnewArr=obj[1].concat(obj[0])
遍歷一次呦不知道合不合樓主口味
                            
查看完整回答
反對(duì) 回復(fù) 2019-08-21
  • 2 回答
  • 0 關(guān)注
  • 608 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)