Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript सरणी को ग्रुप करना


मान लीजिए, हमारे पास एक JavaScript सरणी है जैसे -

const data = [    {       "dataId": "1",       "tableName": "table1",       "column": "firstHeader",       "rows": [          "a","b","c"       ]    },    {       "dataId": "2",       "tableName": "table1",       "column": "secondHeader",       "rows": [          "d","e","f",       ]    }, {       "dataId": "3",       "tableName": "table2",       "column": "aNewFirstHeader",       "rows": [          1,2,3       ]    } ];

हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी एक सरणी लेता है। फ़ंक्शन को मूल सरणी के आधार पर ऑब्जेक्ट्स की एक नई ग्रुप की गई सरणी बनानी चाहिए।

ग्रुप की गई सरणी में अलग, अद्वितीय "tableName" ऑब्जेक्ट्स के डेटा को उनके अपने ऑब्जेक्ट्स में होना चाहिए।

इसलिए अंततः, आउटपुट इस तरह दिखना चाहिए -

const output = [    {       "tableName": "table1",       "column": ["firstHeader", "secondHeader"],       "rows": [["a","b","c"], ["d","e","f"]]    },    {       "tableName": "table2",       "column": ["aNewFirstHeader"],       "rows": [[1,2,3]]    } ];

उदाहरण

const arr = [    {       "dataId": "1",       "tableName": "table1",       "column": "firstHeader",       "rows": [ "val","b","c" ]    },    {       "dataId": "2",       "tableName": "table1",       "column": "secondHeader",       "rows": [          "d","e","f",       ]    },    {       "dataId": "3",       "tableName": "table2",       "column": "aNewFirstHeader",       "rows": [          1,2,3       ]    } ]; const groupArray = (arr = []) => {    const res = arr.reduce((obj => (acc, val) => {       let item = obj.get(val.tableName);       if (!item) {          item = {             tableName: val.tableName, column: [], rows: []          }          obj.set(val.tableName, item); acc.push(item);       };       item.column.push(val.column); item.rows.push(val.rows);       return acc;    })(new Map), []);    return res; }; console.log(JSON.stringify(groupArray(arr), undefined, 4));

आउटपुट

कंसोल में आउटपुट होगा -

[    {       "tableName": "table1",       "column":       [          "firstHeader",          "secondHeader"       ],       "rows": [          [             "val", "b", "c"          ],          [             "d", "e", "f"          ]       ]    }, {       "tableName": "table2",       "column": [             "aNewFirstHeader"          ],          "rows": [          [             1, 2, 3          ]       ]    } ]

  1. JavaScript Array.reverse(): एरे को उल्टा करें JavaScript Array.reverse(): एरे को उल्टा करें

    Array.prototype.reverse() मेथड एरे के तत्वों के क्रम को स्थानांतरित (in-place) उलट देता है। पहला तत्व अंतिम बन जाता है और अंतिम पहला। यह मूल एरे को बदल देता है और उसी एरे का संदर्भ लौटाता है। उदाहरण { arr.reverse(); fillEle.innerHTML = उल्टा: + arr.join(, ); }); </scrip

  1. जावास्क्रिप्ट में ऐरे डीस्ट्रक्चरिंग जावास्क्रिप्ट में ऐरे डीस्ट्रक्चरिंग

    परिचय डीस्ट्रक्चरिंग असाइनमेंट (ES2015) ऐरे से मानों को अलग-अलग वेरिएबल्स में अनपैक करने का एक संक्षिप्त सिंटैक्स है। यह पठनीयता में सुधार करता है और मैन्युअल इंडेक्स एक्सेस की आवश्यकता को कम करता है। उदाहरण निम्न कोड जावास्क्रिप्ट में ऐरे डीस्ट्रक्चरिंग के लिए है: <!DOCTYPE html> <html

  1. JavaScript में ऑब्जेक्ट्स की सरणी को ID के आधार पर कैसे ग्रुप करें? JavaScript में ऑब्जेक्ट्स की सरणी को ID के आधार पर कैसे ग्रुप करें?

    JavaScript में ऑब्जेक्ट्स की सरणी को ID के आधार पर ग्रुप करने का निम्नलिखित कोड है:उदाहरण<!DOCTYPE html> <html lang="hi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <