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

JSON सरणी दिनांक आधारित JavaScript मर्ज करें

<घंटा/>

मान लीजिए, हमारे पास वस्तुओं की निम्नलिखित सरणी है -

const arr = [
   {
      "date" : "2010-01-01",
      "price" : 30
   },
   {
      "date" : "2010-02-01",
      "price" : 40
   },
   {
      "date" : "2010-03-01",
      "price" : 50
   },
   {
      "date" : "2010-01-01",
      "price2" : 45
   },
   {
      "date" : "2010-05-01",
      "price2" : 40
   },
   {
      "date" : "2010-10-01",
      "price2" : 50
   }
];

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो ऐसी एक सरणी लेता है। फिर फ़ंक्शन को ऑब्जेक्ट्स की "डेट" प्रॉपर्टी के आधार पर ऑब्जेक्ट्स को मर्ज करना चाहिए।

उदाहरण

const arr = [
   {
      "date" : "2010-01-01", "price" : 30
   },
   {
      "date" : "2010-02-01",
      "price" : 40
   },
   {
      "date" : "2010-03-01",
      "price" : 50
   },
   {
      "date" : "2010-01-01",
      "price2" : 45
   }, {
         "date" : "2010-05-01",
         "price2" : 40
   },
   {
      "date" : "2010-10-01",
      "price2" : 50
   }
];
const mergeArray = (arr = []) => {
   const data = arr.slice();
   data.sort((a, b) => new Date(a.date) - new Date(b.date))
   const res = []
   data.forEach(el => {
      if(!this[el.date]) {
         this[el.date] = {
            date: el.date,
            price: null,
            price2: null
         }
         res.push(this[el.date])
      }
      this[el.date] = Object.assign(this[el.date], el)
   });
   return res;
}
console.log(JSON.stringify(mergeArray(arr), undefined, 4));

आउटपुट

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

[
   {
      "date": "2010-01-01",
      "price": 30,
      "price2": 45
   },
   {
      "date": "2010-02-01",
      "price": 40,
      "price2": null
   },
   {
      "date": "2010-03-01",
      "price": 50,
      "price2": null
   },
   {
      "date": "2010-05-01",
      "price": null,
      "price2": 40
   },
   {
      "date": "2010-10-01",
      "price": null,
      "price2": 50
   }
]

  1. जावास्क्रिप्ट में मर्ज सॉर्ट को कैसे कार्यान्वित करें?

    मर्ज-सॉर्ट करें मर्ज सॉर्ट एक डिवाइड-एंड-कॉनकॉर टाइप सॉर्टिंग-एल्गोरिदम का एक उदाहरण है। मर्ज सॉर्ट का इनपुट कुछ तत्वों की एक सरणी है, जिन्हें आमतौर पर कम से कम से सबसे बड़े तक व्यवस्थित करने की आवश्यकता होती है। मर्ज सॉर्ट में अनुसरण करने के चरण मर्ज सॉर्ट सरणी को दो उप सरणियों में विभाजित करता

  1. जावास्क्रिप्ट में सॉर्ट बनाम त्वरित सॉर्ट मर्ज करें

    मर्ज सॉर्ट डिवाइड और जीत तकनीक पर आधारित एक छँटाई तकनीक है। इसमें (एन लॉग एन) की सबसे खराब स्थिति समय जटिलता है। लेकिन यह स्थान के मामले में एक अतिरिक्त लागत के साथ आता है क्योंकि यह एल्गोरिथ्म एक अतिरिक्त O(n) मेमोरी लेता है। अब आइए देखें कि हम इस एल्गोरिथम को कैसे लागू करने जा रहे हैं। हम 2 फ़ंक्

  1. जावास्क्रिप्ट एक सरणी को JSON में बदलें

    जावास्क्रिप्ट में किसी सरणी को JSON में बदलने के लिए, कोड इस प्रकार है - उदाहरण body { font-family:Segoe UI, Tahoma, Geneva, Verdana, sans-serif; }सरणी को JSON में बदलनायहां क्लिक करें सरणी को JSON में बदलने के लिए उपरोक्त बटन पर क्लिक करें let sampleEle =document.querySelector(.sample); लेट एरर =[