मान लीजिए, हमारे पास वस्तुओं की एक सरणी में व्यवस्थित एक टीम के बारे में निम्नलिखित डेटा है, हमारा कार्य इस डेटा को एक ऑब्जेक्ट में भूमिका और मूल्य के रूप में खिलाड़ी नामों की सरणी के रूप में परिवर्तित करना है।
हमारा नमूना सरणी -
const team = [{ role: 'Batsman', player: 'V Kohli' }, { role: 'Wicket Keeper', player: 'KL Rahul' }, { role: 'Batsman', player: 'R Sharma' }, { role: 'Wicket Keeper', player: 'R Pant' }, { role: 'Bowler', player: 'B Kumar' }, { role: 'Bowler', player: 'M Shami' }, ]
आइए एक फ़ंक्शन ऑब्जेक्टिफाई () को परिभाषित करें जो एक तर्क के रूप में सरणी में लेता है और संबंधित ऑब्जेक्ट देता है।
इसके लिए कोड होगा -
const objectify = (team) => { const teamObject = {}; team.forEach(member => { if(teamObject[member.role]){ teamObject[member.role].push(member.player); }else{ teamObject[member.role] = [member.player]; } }); return teamObject; } console.log(objectify(team));
यहां, हम प्रत्येक सरणी आइटम पर एक-एक करके लूप करते हैं, यदि यह टीमऑब्जेक्ट में मौजूद है तो हम खिलाड़ी को उसके मान में धकेलते हैं अन्यथा हम इसे एकल खिलाड़ी के साथ एक सरणी असाइन करते हैं
ये रहा पूरा कोड -
उदाहरण
const team = [{ role: 'Batsman', player: 'V Kohli' }, { role: 'Wicket Keeper', player: 'KL Rahul' }, { role: 'Batsman', player: 'R Sharma' }, { role: 'Wicket Keeper', player: 'R Pant' }, { role: 'Bowler', player: 'B Kumar' }, { role: 'Bowler', player: 'M Shami' }, ] const objectify = (team) => { const teamObject = {}; team.forEach(member => { if(teamObject[member.role]){ teamObject[member.role].push(member.player); }else{ teamObject[member.role] = [member.player]; } }); return teamObject; } console.log(objectify(team));
आउटपुट
कंसोल में इस कोड का आउटपुट होगा -
{ Batsman: [ 'V Kohli', 'R Sharma' ], WicketKeeper: [ 'KL Rahul', 'R Pant' ], Bowler: [ 'B Kumar', 'M Shami' ] }