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

JavaScript में ऐरे के ऐरे से यूनिक आइटम संयोजित करते हुए मान जोड़ना


हमारे पास एक ऐरे का ऐरे है, प्रत्येक सबऐरे में ठीक दो तत्व होते हैं, पहला एक स्ट्रिंग है (इस मामले में एक व्यक्ति का नाम) और दूसरा एक इंटीजर है। हमें उन सभी सबऐरे को संयोजित करना है जिनका पहला तत्व समान है और दूसरा तत्व सामान्य सबऐरे के दूसरे तत्वों का योग होना चाहिए।

निम्न हमारा उदाहरण ऐरे है:

const example = [[ 'first', 12 ], [ 'second', 19 ], [ 'first', 7 ]];

इसे निम्न में बदला जाना चाहिए:

const example = [[ 'first', 19 ], [ 'second', 19 ] ];

मान लीजिए हम एक फ़ंक्शन combineArray() लिखते हैं जो ऐरे को इनपुट के रूप में लेता है और संयुक्त ऐरे को आउटपुट के रूप में लौटाता है, इसके लिए कोड होगा:

उदाहरण

const people = [
  ['Ram', 21],
  ['Mohan', 33],
  ['Vikram', 25],
  ['Mike', 29],
  ['Mohan', 41],
  ['Vikram', 26]
];
const combineArray = (people) => {
  const map = {};
  for(const index in people){
    const name = people[index][0];
    const prop = people[index][1];
    if(map[name]){
      map[name] += prop;
    }else{
      map[name] = prop;
    }
  }
  return Object.keys(map).map(key => [key, map[key]]);
}
console.log(combineArray(people));

आउटपुट

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

[ [ 'Ram', 21 ], [ 'Mohan', 74 ], [ 'Vikram', 51 ], [ 'Mike', 29 ] ]

combineArray फ़ंक्शन को समझना:

यह ऐरे पर पुनरावृति करता है, नाम को कुंजी और prop को मान के रूप में एक ऑब्जेक्ट में मैप करता है, यह सुनिश्चित करते हुए कि डुप्लिकेट कुंजी एक साथ जुड़ जाती हैं, और अंत में ऑब्जेक्ट को ऐरे के ऐरे में बदलकर लौटाता है।

इस फ़ंक्शन की समय जटिलता O(2n) है जिसे अक्सर O(n) तक राउंड किया जाता है और स्पेस जटिलता O(n) भी है।


  1. जावास्क्रिप्ट Array.prototype.values() मेथड जावास्क्रिप्ट Array.prototype.values() मेथड

    जावास्क्रिप्ट का array.values() मेथड एक नया Array Iterator ऑब्जेक्ट लौटाता है जिसमें एरे में प्रत्येक इंडेक्स के लिए वैल्यूज होती हैं। सिंटैक्स इस प्रकार है: arr.values() उदाहरण 1 <!DOCTYPE html> <html> <body> <h2>डेमो हेडिंग</h2> <p>वैल्यू दिखाने के लिए बटन

  1. JavaScript array.values() मेथड JavaScript array.values() मेथड

    JavaScript array.values() एक इटरेटर ऑब्जेक्ट लौटाता है जिसमें दिए गए ऐरे के सभी मान होते हैं। उदाहरण { fillEle.innerHTML = ; for (let x of arr.values()) { fillEle.innerHTML += x + </br>; } }); </script> </body> </html> आउटपुट यहां क

  1. जावास्क्रिप्ट एरे में सभी यूनिक वैल्यूज कैसे प्राप्त करें? जावास्क्रिप्ट एरे में सभी यूनिक वैल्यूज कैसे प्राप्त करें?

    जावास्क्रिप्ट एरे में सभी यूनिक वैल्यूज प्राप्त करने के लिए कोड निम्नलिखित है: उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style> &nb