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

JavaScript में ऐरे कैसे सॉर्ट करें? उदाहरण सहित


JavaScript Array.sort() मेथड

sort() मेथड ऐरे को इन-प्लेस सॉर्ट करता है और उसी ऐरे को लौटाता है। डिफ़ॉल्ट रूप से यह स्ट्रिंग तुलना करता है (यूनिकोड कोड पॉइंट्स के आधार पर)।

सिंटैक्स

array.sort(compareFunction)

कॉम्पेरिजन फंक्शन

function compare(a, b) {
  if (a < b) return -1;  // a पहले आएगा
  if (a > b) return 1;   // b पहले आएगा
  return 0;              // क्रम अपरिवर्तित
}

उदाहरण 1: ऑब्जेक्ट्स ऐरे को age (उम्र) से सॉर्ट करना

<html> <body> <script>
  var persons = [
    { name: 'राजेश', birth: 1845, death: 1875 },
    { name: 'भारत', birth: 1909, death: 1917 },
    { name: 'बाबा', birth: 1950, death: 1972 },
    { name: 'तनिष', birth: 2039, death: 2067 },
    { name: 'रहीम', birth: 1989, death: 2049 }
  ];
  
  // आयु (death - birth) के अनुसार अवरोही क्रम (घटता हुआ)
  var sortedDesc = persons.slice().sort(function(a, b) {
    var ageA = a.death - a.birth;
    var ageB = b.death - b.birth;
    return ageB - ageA;  // अवरोही
  });
  
  console.log("अवरोही क्रम:", sortedDesc);
  
  // आरोही क्रम (बढ़ता हुआ)
  var sortedAsc = persons.slice().sort(function(a, b) {
    var ageA = a.death - a.birth;
    var ageB = b.death - b.birth;
    return ageA - ageB;  // आरोही
  });
  
  console.log("आरोही क्रम:", sortedAsc);
</script> </body> </html>

कंसोल आउटपुट

अवरोही क्रम: रहीम (60), राजेश (30), तनिष (28), बाबा (22), भारत (8)
आरोही क्रम: भारत (8), बाबा (22), तनिष (28), राजेश (30), रहीम (60)

संख्यात्मक ऐरे सॉर्ट करना

<script>
  var nums = [10, 5, 40, 25, 100, 1];
  
  // गलत: स्ट्रिंग सॉर्ट
  nums.sort();  // [1, 10, 100, 25, 40, 5] ❌
  
  // सही: संख्यात्मक सॉर्ट
  nums.sort((a, b) => a - b);   // [1, 5, 10, 25, 40, 100] ✅
  nums.sort((a, b) => b - a);   // [100, 40, 25, 10, 5, 1] ✅ (अवरोही)
</script>

स्ट्रिंग्स सॉर्ट करना (लोकल-आधारित)

<script>
  var hindi = ['आम', 'केला', 'अंगूर', 'सेब'];
  hindi.sort((a, b) => a.localeCompare(b, 'hi'));
  // ['अंगूर', 'आम', 'केला', 'सेब']
</script>

महत्वपूर्ण नोट्स

  • मूल ऐरे बदल जाता है - कॉपी के लिए slice().sort() उपयोग करें
  • डिफ़ॉल्ट स्ट्रिंग सॉर्ट संख्याओं के लिए गलत परिणाम देता है
  • localeCompare() अंतरराष्ट्रीयकरण के लिए सर्वोत्तम
  • स्थिर सॉर्ट (Stable sort) ES2019 से गारंटीड
  1. JavaScript का उपयोग करके एक्सेंटेड कैरेक्टर्स वाले स्ट्रिंग्स को कैसे सॉर्ट करें? JavaScript का उपयोग करके एक्सेंटेड कैरेक्टर्स वाले स्ट्रिंग्स को कैसे सॉर्ट करें?

    JavaScript में एक्सेंटेड कैरेक्टर्स वाले स्ट्रिंग्स को सॉर्ट करने का निम्नलिखिक कोड है:उदाहरण<!DOCTYPE html> <html lang="hi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />

  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>    body

  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>