কম্পিউটার

জাভাস্ক্রিপ্টে অবজেক্ট গঠনের জন্য অ্যারে এন্ট্রি বিভক্ত করুন


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

const arr = [
   "fiat−palio",
   "fiat−stilo",
   "fiat−strada",
   "fiat−uno",
   "fiat−uno",
   "gm−corsa",
   "gm−celta",
   "ford−fiesta",
   "volkswagen−gol",
   "volkswagen−gol",
   "volkswagen−gol",
   "volkswagen−voyage"
]

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা স্ট্রিংগুলির একটি অ্যারে নেয়। উপরের অ্যারেতে, সমস্ত এন্ট্রিতে একটি জিনিস মিল রয়েছে (সবগুলি একটি স্ট্রিং ছাড়াও), তাদের সকলের একটি ড্যাশ ('−') দ্বারা আলাদা করা একটি স্ট্রিং জোড়া রয়েছে৷

আমাদের ফাংশনের এমন একটি অবজেক্ট প্রস্তুত করা উচিত যাতে ড্যাশ ('−) এর পূর্বের অংশ হিসাবে কীগুলি থাকে এবং বস্তু হিসাবে তাদের মানগুলি থাকে যাতে প্রতিটি স্ট্রিংয়ের গণনা থাকে যা তারা মূল অ্যারের মধ্যে ছিল।

অতএব, উপরের অ্যারের জন্য, আউটপুটটি এইরকম হওয়া উচিত −

const output = {
   "fiat": {
      "palio": 1,
      "stilo": 1,
      "strada": 1,
      "uno": 2
   },
   "gm": {
      "corsa": 1,
      "celta": 1
   },
   "ford": {
      "fiesta": 1
   },
   "volkswagen": {
      "gol": 3,
      "voyage": 1
   }
};

উদাহরণ

এর জন্য কোড হবে −

const arr = [
   "fiat−palio",
   "fiat−stilo",
   "fiat−strada",
   "fiat−uno",
   "fiat−uno",
   "gm−corsa",
   "gm−celta",
   "ford−fiesta",
   "volkswagen−gol",
   "volkswagen−gol",
   "volkswagen−gol",
   "volkswagen−voyage"
];
const convertToObject = (arr = []) => {
   let res = arr.reduce((acc, val) => {
      let pair = val.split('−');
      let mark = pair[0];
      let model = pair[1];
      if(!acc.hasOwnProperty(mark)) {
         acc[mark] = {};
         acc[mark][model] = 1;
      } else {
         if(acc[mark].hasOwnProperty(model)) {
            acc[mark][model] += 1;
         } else {
            acc[mark][model] = 1;
         }
      }
      return acc;
   }, {})
   return res;
}
console.log(convertToObject(arr));

আউটপুট

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

{
   fiat: { palio: 1, stilo: 1, strada: 1, uno: 2 },
   gm: { corsa: 1, celta: 1 },
   ford: { fiesta: 1 },
   volkswagen: { gol: 3, voyage: 1 }
}

  1. জাভাস্ক্রিপ্টে array.entries() পদ্ধতি।

  2. নতুন অ্যারেতে জাভাস্ক্রিপ্ট অবজেক্ট ফরম্যাটিং

  3. JavaScript-এ Object.keys().map() VS Array.map()

  4. জাভাস্ক্রিপ্টে অবজেক্ট প্রপার্টি নামের অ্যারে প্রতিস্থাপন করা হচ্ছে