2012-09-23 13 views
67

संभव डुप्लिकेट:
Using &&'s short-circuiting as an if statement?
Does javascript use optimization in boolean expressions?क्या जावास्क्रिप्ट में "शॉर्ट-सर्किट" मूल्यांकन है?

मैं अगर JavaScript सी # में & & ऑपरेटर की तरह "शॉर्ट सर्किट" मूल्यांकन है पता करना चाहते हैं। यदि नहीं, तो मैं जानना चाहता हूं कि क्या कोई कामकाज है जो अपनाने के लिए समझ में आता है।

+4

आप आसानी से यह अपने आप को परीक्षण कर सकते हैं ... – gdoron

+0

धन्यवाद रोब डब्ल्यू, मैं नहीं मैं गूगल पर कि स्ट्रिंग इस्तेमाल कर सकते हैं पता था! :-) – GibboK

+2

आपका स्वागत है। मैंने खोजों को तेज़ करने के लिए 'https: //www.google.com/search? Q = साइट: stackoverflow.com +% s' को एक खोज शॉर्टकट (क्रोम/फ़ायरफ़ॉक्स) के रूप में जोड़ा है। –

उत्तर

81

हां, जावास्क्रिप्ट में "शॉर्ट-सर्किट" मूल्यांकन है।

if (true == true || foo.foo){ 
    // Passes, no errors because foo isn't defined. 
} 

Live DEMO

if (false && foo.foo){ 
    // Passes, no errors because foo isn't defined. 
} 

Live DEMO

+4

तो शॉर्ट सर्किट जेएस में मानक है? – GibboK

+0

@GibboK। मानक से आपका मतलब क्या नहीं है, आप उस व्यवहार को नहीं बदल सकते हैं, यह एकमात्र व्यवहार है। (जिस तरह से सी # के साथ) – gdoron

+1

धन्यवाद gdoron, कृपया मुझे समझने में मदद करें ... सी # में मेरे पास बाइनरी ऑपरेटर भी है और इसलिए ऑपरेटरों को पास करने के लिए सही होना चाहिए, इसके बजाय सी – GibboK