মান লিয়ে, আমাদের একটি দীর্ঘ স্ট্রিং আছে যা একটি সংখ্যা উপস্থাপন করে -
const str = '11222233344444445666';
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এমন একটি স্ট্রিং গ্রহণ করবে। আমাদের ফাংশনটি একটি অবজেক্ট রিটার্ন করবে যা স্ট্রিং-এ থাকা প্রতিটি অনন্য সংখ্যার জন্য একটি অনন্য "id" প্রোপার্টি এবং অন্যটি "count" প্রোপার্টি দিয়ে থাকবে যা সেই সংখ্যা কতবার আসেছে তা সংরক্ষণ করবে।
অতএব, উপরের স্ট্রিং-এর আউটপুট হবে -
const output = {
'1': { id: '1', displayed: 2 },
'2': { id: '2', displayed: 4 },
'3': { id: '3', displayed: 3 },
'4': { id: '4', displayed: 7 },
'5': { id: '5', displayed: 1 },
'6': { id: '6', displayed: 3 }
};
উদাহরণ
const str = '11222233344444445666';
const countNumberFrequency = str => {
const map = {};
for(let i = 0; i < str.length; i++){
const el = str[i];
if(map.hasOwnProperty(el)){
map[el]['displayed']++;
} else {
map[el] = {
id: el,
displayed: 1
};
};
};
return map;
};
console.log(countNumberFrequency(str));
আউটপুট
কনসোলে আউটপুট হবে -
{
'1': { id: '1', displayed: 2 },
'2': { id: '2', displayed: 4 },
'3': { id: '3', displayed: 3 },
'4': { id: '4', displayed: 7 },
'5': { id: '5', displayed: 1 },
'6': { id: '6', displayed: 3 }
}