কম্পিউটার

একাধিক ফিল্টার জাভাস্ক্রিপ্টের উপর ভিত্তি করে JSON ডেটা থেকে গড় গণনা করুন


ধরুন, আমাদের কাছে এই ধরনের বস্তুর একটি অ্যারে আছে −

const arr =[ { "SupplierName" :"John", "Category " :"A", "Points" :3 }, { "SupplierName" :"John", "Category " :"A", "Points " :11 }, { "SupplierName" :"John", "Category " :"A", "Points" :undefined }, { "SupplierName" :"John", "Category " :"B", "Points" :2 }, { "SupplierName" :"John", "Category " :"B", "Points" :6 }, { "SupplierName" :"Praveen", "Category " :"A", "Points" :3 } , { "SupplierName" :"Praveen", "Category " :"A", "Points" :7 }];

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এইরকম একটি অ্যারে নেয়৷

ফাংশন নিম্নলিখিত জিনিসগুলি করা উচিত -

  • পুনরাবৃত্তিকারী সরবরাহকারীদেরকে একটি স্বতন্ত্র পৃথক বস্তুতে গোষ্ঠীবদ্ধ করুন (পুনরাবৃত্তির দ্বারা, আমরা একই "সাপ্লায়ারের নাম" এবং "শ্রেণী" ক্ষেত্র সহ বস্তুগুলিকে বোঝাতে চাই)।
  • একসাথে তাদের পয়েন্ট যোগ করুন
  • প্রতিটি বস্তুতে একটি নতুন "গড় ক্ষেত্র যোগ করুন, সেই সরবরাহকারীর গড় পয়েন্ট সহ।

সুতরাং, অবশেষে আউটপুট −

এর মত হওয়া উচিত
const output =[ { "SupplierName" :"John", "Category " :"A", "Points" :14, "Average" :7 }, { "SupplierName" :"John", "Category " :"B", "পয়েন্ট" :8, "গড়" :4 }, { "SupplierName" :"Praveen", "Category " :"A", "Points" :10, "Average" :5 }]; 

উদাহরণ

const arr =[ { "SupplierName" :"John", "Category " :"A", "Points" :3 }, { "SupplierName" :"John", "Category " :"A", "Points " :11 }, { "SupplierName" :"John", "Category " :"A", "Points" :undefined }, { "SupplierName" :"John", "Category " :"B", "Points" :2 }, { "SupplierName" :"John", "Category " :"B", "Points" :6 }, { "SupplierName" :"Praveen", "Category " :"A", "Points" :3 } , { "SupplierName" :"Praveen", "Category " :"A", "Points" :7 }];const groupAndAverage =(arr =[]) => { const group =arr.reduce((acc, obj) => { const name =obj.SupplierName + obj.Category; if (acc[name]) { if (obj.Points) (acc[name].Points +=obj.Points) &&++acc[name]. গড়; } অন্য { acc[নাম] =obj; acc[নাম]। গড় =1; // আইটেম কাউন্টার হিসাবে 'গড়' বৈশিষ্ট্য গ্রহণ (প্রথম পর্বে) }; ফেরত acc; }, {}); // পাওয়া "পয়েন্টের গড়" const res =Object.keys(groups).map( name => { group[name].Average =Math.round(groups[name].Points/groups[name].Average); ফেরত গোষ্ঠী [নাম]; }); রিটার্ন রিটার্ন;}; console.log(JSON.stringify(groupAndAverage(arr), undefined, 4));

আউটপুট

এবং কনসোলে আউটপুট হবে −

[ { "SupplierName":"John", "Category ":"A", "Points":22, "Average":6 }, { "SupplierName":"Praveen", "Category ":"A" , "পয়েন্ট":10, "গড়":5 }]

  1. জাভাস্ক্রিপ্ট ব্যবহার করে JSON অ্যারে থেকে ডেটা কীভাবে পড়তে হয়?

  2. জাভাস্ক্রিপ্টে টেক্সটেরিয়া ইনপুটে JSON ডেটা সুন্দর করবেন?

  3. জাভাস্ক্রিপ্ট ব্যবহার করে অবজেক্টের অ্যারে থেকে গড় বয়স খোঁজা

  4. এক্সেলের একাধিক মানদণ্ডের উপর ভিত্তি করে কীভাবে টেবিল থেকে ডেটা বের করবেন