2 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊
派對(duì)1是問(wèn)題所在。這里:
function partyTally(myParty){
return Object.values(electionResults).reduce((t, c) => t + Number(c[myParty]), 0)
}
例如,通過(guò)“party1”。
這是一次統(tǒng)計(jì)所有選區(qū)的所有政黨的方法:
electionResults = {
"constituency_1": {
"party1": "200",
"party2": "400"
},
"constituency_2": {
"party1": "100",
"party2": "500"
}
};
partiesTally = Object.values(electionResults).reduce((result, constituency) => {
Object.keys(constituency).forEach(party => {
if(result[party]==undefined) result[party]=0;
result[party]+=(+constituency[party]);
});
return result;
},{});
console.log(partiesTally);

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊
您可以通過(guò)使用完整參數(shù)來(lái)完成此操作,Object.values
而不是嘗試在回調(diào)中立即解構(gòu)。
function partyTally(myParty){ return Object.values(electionResults).reduce((t, constituencyResults) => t + +constituencyResults[myParty], 0) }
添加回答
舉報(bào)