jQuery में प्रत्येक विधि कॉल .each
फ़ंक्शन में लपेटा गया है, इसलिए यदि कोई तत्व मौजूद है तो जांचना आम तौर पर आवश्यक नहीं है - सेट खाली होने पर बुलाए गए फ़ंक्शन का कोई पुनरावृत्ति नहीं होगा, यह चुपचाप विफल हो जाता है। दिया गया उदाहरण इसका एक अच्छा उदाहरण है, सीधे $('#progressbar').progressbar()
पर कॉल करने में कोई हानि या प्रदर्शन जुर्माना नहीं है।
जब आप कि क्या करना चाहते हैं, शायद इसलिए कि आप डोम में हेरफेर करने या कुछ महंगा एक तत्व की उपस्थिति के आधार पर कार्रवाई करते समय होते हैं, तो , सुनिश्चित करें कि आप कॉल कैश, विशेष रूप से अगर यह एक जटिल चयनकर्ता है बनाने:
specialThings = $('section .special')
if specialThings.length > 0
doStuffWith specialThings
या वैकल्पिक रूप से, coffeescript के वर सुरक्षा का लाभ लेने:
if (specialThings = $ 'section .special').length
doStuffWith specialThings
स्रोत
2012-06-11 09:22:49
कि jQuery है? –
मुझे लगता है कि आपको पहले एक त्रुटि मिलेगी, नहीं? – thescientist
इसे कॉफ़ीस्क्रिप्ट से सीधे जावास्क्रिप्ट में परिवर्तित कर दिया गया है। मुझे लगता है कि त्रुटि प्रकट नहीं होती है क्योंकि यह घटना उपयोगकर्ता इंटरैक्शन के बिना लोड की जाती है (नीचे गैब्रियलहिल का जवाब देखें)। –