কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে নেস্টেড অ্যারে গ্রুপিং করা

ধরুন, আমাদের নিচের মত একটি ভ্যালুর অ্যারে আছে:

const arr = [    {       value1:[1,2],       value2:[{type:'A'}, {type:'B'}]    },    {       value1:[3,5],       value2:[{type:'B'}, {type:'B'}]    } ];

আমাদের একটি ফাংশন লিখতে হবে যা এমন একটি অ্যারে নিবে। ফাংশনটি অবজেক্টের "type" প্রোপার্টি অনুযায়ী ডেটা গ্রুপ করে একটি অ্যারে তৈরি করবে।

উপরের অ্যারেতে আউটপুট হবে এমন:

const output = [    {type:'A', value: [1,2]},    {type:'B', value: [3,5]} ];

উদাহরণ

এটির কোড হবে:

const arr = [    {       value1:[1,2],       value2:[{type:'A'}, {type:'B'}]    },    {       value1:[3,5],       value2:[{type:'B'}, {type:'B'}]    } ]; const groupValues = (arr = []) => {    const res = [];    arr.forEach((el, ind) => {       const thisObj = this;       el.value2.forEach(element => {          if (!thisObj[element.type]) {             thisObj[element.type] = {                type: element.type,                value: []             }             res.push(thisObj[element.type]);          };          if (!thisObj[ind + '|' + element.type]) {             thisObj[element.type].value =             thisObj[element.type].value.concat(el.value1);             thisObj[ind + '|' + element.type] = true;          };       });    }, {})    return res; }; console.log(groupValues(arr));

আউটপুট

কনসোলে আউটপুট হবে:

[    { type: 'A', value: [ 1, 2 ] },    { type: 'B', value: [ 1, 2, 3, 5 ] } ]
  1. জাভাস্ক্রিপ্ট array.values() মেথড

  2. জাভাস্ক্রিপ্ট array.flatMap() মেথড

  3. জাভাস্ক্রিপ্ট Array slice() মেথড

  4. জাভাস্ক্রিপ্টে দুটি অবজেক্ট তুলনা করে নেস্টেড ভ্যালু গ্রুপিং করা