"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > क्या Array.sort() विभिन्न ब्राउज़रों में स्थिर है?

क्या Array.sort() विभिन्न ब्राउज़रों में स्थिर है?

2024-11-12 को प्रकाशित
ब्राउज़ करें:317

Is Array.sort() Stable in Different Browsers?

Array.sort() विभिन्न ब्राउज़रों में विधि स्थिरता

ECMA स्क्रिप्ट विनिर्देश ऐरे के एल्गोरिदम और स्थिरता पर अज्ञेयवादी रहता है। सॉर्ट() विधि। हालाँकि, हाल के अपडेट और खोजों ने विभिन्न ब्राउज़रों में इस पद्धति के व्यवहार पर प्रकाश डाला है। डुप्लिकेट मानों की स्थिति में तत्व क्रम बनाए रखना आवश्यक है। इसका मतलब यह है कि Array.sort() ES2019 और बाद के संस्करणों का समर्थन करने वाले ब्राउज़र में स्थिर होने की गारंटी है।

विरासत ब्राउज़र समर्थन

ES2019 से पहले, की स्थिरता Array.sort() ब्राउज़र पर निर्भर था:

इंटरनेट एक्सप्लोरर (IE6 ):

स्थिर
  • फ़ायरफ़ॉक्स ( अस्थिर
  • फ़ायरफ़ॉक्स (>= 3): स्थिर
  • क्रोम ( अस्थिर
  • क्रोम (>= 70): स्थिर
  • ओपेरा ( अस्थिर
  • ओपेरा (>= 10): स्थिर
  • सफारी (4 ): स्थिर
  • किनारा (लंबे सरणियों के लिए): अस्थिर
  • V8 विसंगति

  • V8 (क्रोम और Node.js द्वारा उपयोग किया जाने वाला जावास्क्रिप्ट इंजन) के कुछ संस्करणों में, सॉर्टिंग एल्गोरिदम सरणी के आकार के आधार पर स्थिर से अस्थिर में बदल सकता है। इस व्यवहार को प्रदर्शित करने के लिए, निम्नलिखित परीक्षण मामले पर विचार करें:

function Pair(_x, _y) { यह.x = _x; यह.y = _y; } फ़ंक्शन जोड़ीसॉर्ट(ए, बी) { वापसी a.x - b.x; } वर y = 0; वर जाँच = []; जबकि (चेक.लंबाई यह कोड यादृच्छिक x-निर्देशांक और बढ़ते y-निर्देशांक के साथ जोड़ियों की एक सरणी का अनुकरण करता है। एक स्थिर प्रकार समान x-निर्देशांक वाले तत्वों के क्रम को बनाए रखेगा (इस मामले में, y-निर्देशांक अनुक्रमिक होना चाहिए)। हालाँकि, कुछ ब्राउज़र (विशेषकर क्रोम के पुराने संस्करण) बड़े एरे को सॉर्ट करने में अस्थिरता प्रदर्शित कर सकते हैं।
            
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3