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

JavaScript में सरणी को सॉर्ट करें ताकि विशिष्ट आइटम पहले आएं


मान लीजिए हमारे पास निम्नलिखित जैसी ऑब्जेक्ट्स की सरणी है:

const arr = [
  {flag: true, other: 1},
  {flag: true, other: 2},
  {flag: false, other: 3},
  {flag: true, other: 4},
  {flag: true, other: 5},
  {flag: true, other: 6},
  {flag: false, other: 7}
];

हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी सरणी लेता है और निम्नलिखित शर्तों के आधार पर सॉर्ट करता है:

  • यदि arr.flag === false, तो मिलान करने वाला तत्व सरणी में पहले रखा जाता है, लेकिन केवल पिछले मिलान तत्वों के बाद।
  • जो तत्व मेल नहीं खाते, वे अपने मूल क्रम में रहते हैं।
  • दिखाई देने का क्रम महत्वपूर्ण है।

उपरोक्त सरणी के लिए आउटपुट होना चाहिए:

const output = [
  {flag: false, other: 3},
  {flag: false, other: 7},
  {flag: true, other: 1},
  {flag: true, other: 2},
  {flag: true, other: 4},
  {flag: true, other: 5},
  {flag: true, other: 6}
];

उदाहरण

निम्नलिखित कोड देखें:

const arr = [
  {flag: true, other: 1},
  {flag: true, other: 2},
  {flag: false, other: 3},
  {flag: true, other: 4},
  {flag: true, other: 5},
  {flag: true, other: 6},
  {flag: false, other: 7}
];
const sortByFlag = arr => {
  const sorter = (a, b) => {
    if (!a['flag'] && b['flag']) return -1;
    if (a['flag'] && !b['flag']) return 1;
    return a['other'] - b['other'];
  };
  arr.sort(sorter);
};
sortByFlag(arr);
console.log(arr);

आउटपुट

यह कंसोल पर निम्नलिखित आउटपुट देगा:

[
  { flag: false, other: 3 },
  { flag: false, other: 7 },
  { flag: true, other: 1 },
  { flag: true, other: 2 },
  { flag: true, other: 4 },
  { flag: true, other: 5 },
  { flag: true, other: 6 }
]

  1. - JavaScript से ऐरे के पहले आइटम्स कैसे प्राप्त करें

    JavaScript ऐरे में पहले X नंबर के एलिमेंट्स को कैसे एक्सेस करें? आप JavaScript के बिल्ट-इन slice() मेथड का उपयोग करते हैं। उदाहरण के रूप में, मान लीजिए आपको ऐरे के पहले 3 आइटम्स में हेरफेर करने की आवश्यकता है। इस मामले में ऐरे एक्सरसाइज की लिस्ट है: const exerciseList = [ Deadlift, Squat,

  1. - JavaScript में ऐरे के पहले n मान कैसे प्राप्त करें

    ऐरे के पहले n एलिमेंट्स प्राप्त करने के लिए हम कई तार्किक विधियों का उपयोग कर सकते हैं, लेकिन underscore.js JavaScript की एक लाइब्रेरी ने _.first() नामक एक फंक्शन प्रदान किया है ताकि JavaScript के पहले n एलिमेंट्स प्राप्त किए जा सकें। यह ऐरे के साथ डील करने के लिए व्यापक रूप से उपयोग की जाने वाली व

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

    जावास्क्रिप्ट Array.prototype.sort() मेथड का उपयोग एरे को सॉर्ट करने के लिए किया जाता है। सॉर्टिंग का क्रम अल्फाबेटिक, न्यूमेरिक, आरोही या अवरोही हो सकता है। Array.prototype.sort() मेथड के लिए कोड निम्नलिखित है: उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /