मैंने एक उत्तर खोजने का प्रयास किया है, और मुझे संबंधित प्रश्न मिला है, और जब वे मेरे निष्कर्षों की पुष्टि करते हैं (that one multiple selector call is slower than multiple single selector calls) उनमें से कोई भी मुझे क्यों नहीं बताता है।एकाधिक चयनकर्ता बनाम एकल चयनकर्ता प्रदर्शन
मूल रूप से, जब आप इस कोड को चलाएँ:
$("#one, #two").hide();
$("#one, #two").show();
इस कोड के खिलाफ:
$("#one").hide();
$("#two").hide();
$("#one").show();
$("#two").show();
फिर बाद में तेजी के बारे में 50% से किया जाएगा।
हालांकि, एक बार जब हम तीसरे चयनकर्ता को जोड़ते हैं, तो प्रदर्शन अंतर 39% तेज होता है।
चौथा चयनकर्ता अंतर: 26% तेज।
पांचवां: 30% तेज।
छठी: 31% तेज।
दस: 31% तेज।
प्रदर्शन लगभग 6 चयनकर्ताओं पठार के लिए लगता है:
तो हम कुछ है कि इस तरह दिखता है मिल (इन मूल्यों को ध्यान दें है एक 5% मार्जिन के बारे में में लेकर लग रहे हैं)। यह कभी भी एक कॉल के माध्यम से प्रत्येक को करने की तुलना में 31% धीमी होने की तुलना में 'तेज' नहीं लगता है। वह क्यों है?
व्यक्तिगत रूप से, मुझे प्रति कॉल एकाधिक चयनकर्ताओं का उपयोग करना अच्छा लगता है, लेकिन ऐसा लगता है कि यह (अपेक्षाकृत) बड़ा प्रदर्शन हिट है। यह (नहीं) कब उपयोग करने के लिए उपयुक्त होगा?
दिलचस्प। मैंने हमेशा माना था कि पहला मामला (एकाधिक) तेज होगा। कक्षा चयनकर्ताओं, समान प्रदर्शन के बारे में क्या? –
यह मेरी धारणा भी है, इसलिए मैं इससे आश्चर्यचकित था। मैंने कक्षा चयनकर्ताओं की जांच नहीं की है, लेकिन यह देखने लायक है। मैं बाद में कुछ परीक्षण चलाऊंगा। – Johannes
मुझे * अपेक्षाकृत बड़ा * के बारे में निश्चित नहीं है। संदर्भ कोड पहले से ही माइक्रोसॉन्ड के नीचे चलता है तो बड़ी तस्वीर में 50% तेज नहीं होगा। –