मान लीजिए कि हमारे पास सरणियों की एक सरणी है जिसमें कुछ छात्रों के अंक इस तरह के कुछ विषयों में शामिल हैं -
const arr = [ ["English", 52], ["Hindi", 154], ["Hindi", 241], ["Spanish", 10], ["French", 65], ["German", 98], ["Russian", 10] ];
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो एक ऐसी सरणी लेता है और वस्तुओं का एक ऑब्जेक्ट देता है।
वापसी वस्तु में प्रत्येक अद्वितीय विषय के लिए एक वस्तु होनी चाहिए, और उस वस्तु में उस भाषा की उपस्थिति की संख्या, कुल अंकों का योग और औसत जैसी जानकारी होनी चाहिए।
उदाहरण
इसके लिए कोड होगा -
const arr = [ ["English", 52], ["Hindi", 154], ["Hindi", 241], ["Spanish", 10], ["French", 65], ["German", 98], ["Russian", 10] ]; const groupSubjects = arr => { const grouped = arr.reduce((acc, val) => { const [key, total] = val; if(!acc.hasOwnProperty(key)){ acc[key] = { 'count': 0, 'total': 0 }; }; const accuKey = acc[key]; accuKey['count']++; accuKey['total'] += total; accuKey['average'] = total / accuKey['count']; return acc; }, {}); return grouped; }; console.log(groupSubjects(arr));
आउटपुट
और कंसोल में आउटपुट होगा -
{ English: { count: 1, total: 52, average: 52 }, Hindi: { count: 2, total: 395, average: 120.5 }, Spanish: { count: 1, total: 10, average: 10 }, French: { count: 1, total: 65, average: 65 }, German: { count: 1, total: 98, average: 98 }, Russian: { count: 1, total: 10, average: 10 } }