ধরি আমাদের অ্যারেটি নিচের মতো:
var details = [
{ studentName: "John", studentAge: 23 },
{ studentName: "David", studentAge: 24 },
{ studentName: "John", studentAge: 21 },
{ studentName: "John", studentAge: 25 },
{ studentName: "Bob", studentAge: 22 },
{ studentName: "David", studentAge: 20 }
]
আমাদের রিপিট হওয়া নামেরOCurrence কাউন্ট করতে হবে। আউটপুট হবে:
John: 3 David: 2 Bob: 1
এই কাজের জন্য reduce() কনসেপ্ট ব্যবহার করা হয়।
উদাহরণ
নিচের কোডটি অনুসরণ করুন:
var details = [
{ studentName: "John", studentAge: 23 },
{ studentName: "David", studentAge: 24 },
{ studentName: "John", studentAge: 21 },
{ studentName: "John", studentAge: 25 },
{ studentName: "Bob", studentAge: 22 },
{ studentName: "David", studentAge: 20 }
]
var output = Object.values(details.reduce((obj, { studentName }) => {
if (obj[studentName] === undefined)
obj[studentName] = { studentName: studentName, occurrences: 1 };
else
obj[studentName].occurrences++;
return obj;
}, {}));
console.log(output);
প্রোগ্রামটি রান করতে নিচের কমান্ডটি ব্যবহার করুন:
node fileName.js
এখানে ফাইলের নাম হলো demo282.js।
আউটপুট
কনসোলে নিচের আউটপুটটি দেখাবে:
PS C:\Users\Amit\javascript-code> node demo282.js
[ { studentName: 'John', occurrences: 3 }, { studentName: 'David', occurrences: 2 }, { studentName: 'Bob', occurrences: 1 } ]