(क्योंकि मुझे जवाब देने के लिए पर्याप्त प्रतिष्ठा नहीं है ...)
भेड़िया ने लिखा:
अपरिभाषित या अशक्त वस्तु पर लंबाई की संपत्ति को कॉल करने से IE और वेबकिट ब्राउज़र विफल हो जाएंगे!
इसके बजाय यह प्रयास करें:
// NOTE!! THE FOLLOWING IS WRONG; DO NOT USE! -- EleotleCram
if($("#something") !== null){
// do something
}
या
// NOTE!! THE FOLLOWING IS WRONG; DO NOT USE! -- EleotleCram
if($("#something") === null){
// don't do something
}
हालांकि यह सच है कि अनिर्धारित या अशक्त वस्तु पर लंबाई की संपत्ति को कॉल करने से ब्राउज़र विफल हो जाएंगे, jQuery के चयनकर्ताओं ($ ('...') का परिणाम कभी भी अशक्त या अपरिभाषित नहीं होगा । इस प्रकार कोड के सुझावों का कोई मतलब नहीं है। अन्य उत्तरों में से एक का उपयोग करें, वे अधिक समझ में आते हैं।
(अपडेट 2012) क्योंकि लोग कोड को देखते हैं और यह उत्तर सूची में बहुत ऊपर है: पिछले कुछ वर्षों से, मैं इस छोटे प्लगइन का उपयोग कर रहा हूं:
jQuery.fn['any'] = function() {
return (this.length > 0);
};
मुझे लगता है कि $ ('div')। कोई भी () $ ('div') की तुलना में बेहतर पढ़ता है । लंबाई , इसके अलावा आप टाइपोस से बहुत अधिक पीड़ित होंगे: $ ('div')। ayn () एक रनटाइम त्रुटि देगा। , $ ('div')। lenght चुपचाप सबसे अधिक संभावना है कि हमेशा झूठा होगा।
__
संपादन २०१२:
1) क्योंकि लोग कोड को देखते हैं और यह नहीं पढ़ते हैं कि कोड के आसपास क्या कहा गया है, मैंने दो बड़े कैविटी लेक्टर नोट भेड़िया के उद्धृत कोड में जोड़े।
2) मैंने इस स्थिति के लिए उपयोग किए जाने वाले छोटे प्लगइन का कोड जोड़ा।