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

JavaScript में सरणियों को मर्ज और सुधारना

समस्या

हमें एक JavaScript फ़ंक्शन लिखना है जो संख्याओं की दो सरणियों, arr1 और arr2, को पहला और दूसरा तर्क के रूप में लेता है।

हमारे फ़ंक्शन को इन दोनों सरणियों के तत्वों को एक नई सरणी में मर्ज करना चाहिए और यदि मर्ज करने से पहले या बाद में कोई डुप्लिकेट मौजूद हैं, तो हमें अतिरिक्त डुप्लिकेट को हटा देना चाहिए ताकि प्रत्येक तत्व की केवल एक प्रति मर्ज की गई सरणी में मौजूद रहे।

यहां क्रम इतना महत्वपूर्ण नहीं है लेकिन तत्वों की आवृत्ति (जो प्रत्येक तत्व के लिए 1 होनी चाहिए) महत्वपूर्ण है।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -

const arr1 = [6, 5, 2, 1, 8];
const arr2 = [3, 4, 6, 8, 9];

तो आउटपुट होना चाहिए -

const output = [6, 5, 2, 1, 8, 3, 4, 9];

उदाहरण

निम्नलिखित कोड है -

const arr1 = [6, 5, 2, 1, 8];
const arr2 = [3, 4, 6, 8, 9];
const mergeAndRectify = (arr1 = [], arr2) => {
  const { length: len1 } = arr1;
  const { length: len2 } = arr2;
  const res = [];
  let curr = 0;
  for (let i = 0; i < len1 + len2; i++) {
    if (i >= len1) {
      curr = i - len1;
      if (!res.includes(arr1[curr])) {
        res.push(arr1[curr]);
      }
    } else {
      curr = i;
      if (!res.includes(arr2[curr])) {
        res.push(arr2[curr]);
      }
    }
  }
  return res;
};
console.log(mergeAndRectify(arr1, arr2));

आउटपुट

कंसोल आउटपुट निम्नलिखित है -

[ 3, 4, 6, 8, 9, 5, 2, 1 ]
  1. JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स

    const ES2015 (ES6) में पेश किया गया एक ब्लॉक-स्कोप्ड वेरिएबल डिक्लेरेशन है जो रीअसाइनमेंट को रोकता है। यह आधुनिक JavaScript में डिफ़ॉल्ट विकल्प होना चाहिए जब रीअसाइनमेंट की आवश्यकता न हो। उदाहरण { try { a = 44; // TypeError: Assignment to constant variable } catch (e

  1. - JavaScript में अंतराल सरणियों का प्रतिच्छेदन खोजना

    समस्या JavaScript फ़ंक्शन जो अंतरालों की दो सरणियों arr1 और arr2 को लेता है जो युग्मवार असंयुक्त और क्रमबद्ध क्रम में हैं। एक बंद अंतराल [a, b] (a <= b के साथ) वास्तविक संख्याओं x के समुच्चय को दर्शाता है जहां a <= x <= b। दो बंद अंतरालों का प्रतिच्छेदन वास्तविक संख्याओं का एक समुच्चय है जो या तो ख

  1. - JavaScript में नंबर्स और ऑपरेंड्स को शब्दों में बदलना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो किसी गणितीय ऑपरेशन की स्ट्रिंग लेता है और उसका शाब्दिक शब्दांकन लौटाता है।उदाहरणनिम्नलिखित कोड है − { const o = { + : Plus, - : Minus, * : Times, / : Divided By, ** : To The Power Of, = : Equals, != : Does Not Equal, } const n = { 1 : One, 2 : Two,