हमें एक JavaScript फ़ंक्शन लिखना है जो विभिन्न डेटा प्रकारों के तत्वों वाली एक सरणी लेता है और फ़ंक्शन को प्रत्येक डेटा प्रकार की आवृत्ति (frequency) दर्शाने वाला एक मैप (Map) लौटाना चाहिए।
मान लीजिए हमारी सरणी है:
const arr = [23, 'df', undefined, null, 12, { name: 'Rajesh' }, [2, 4, 7], 'dfd', null, Symbol('*'), 8];
कोड
const arr = [23, 'df', undefined, null, 12, { name: 'Rajesh' }, [2, 4, 7], 'dfd', null, Symbol('*'), 8];
const countDataTypes = arr => {
return arr.reduce((acc, val) => {
const dataType = typeof val;
if (acc.has(dataType)) {
acc.set(dataType, acc.get(dataType) + 1);
} else {
acc.set(dataType, 1);
}
return acc;
}, new Map());
};
console.log(countDataTypes(arr));
आउटपुट
Map(5) { 'number' => 3, 'string' => 2, 'undefined' => 1, 'object' => 4, 'symbol' => 1 }