operators - Why does this code produce 3 in JavaScript? -
निम्न कोड क्यों उत्पन्न करता है मुझे उम्मीद थी कि इसका परिणाम क्यों तार्किक ऑपरेटर इसके अलावा, यदि आप तार्किक ऑपरेटरों के साथ क्या हो रहा है? यह उम्मीद की जानी है। जावास्क्रिप्ट (और कई अन्य भाषाओं) में, न केवल बूलियंस स्वयं या गलत हैं, लेकिन अन्य वस्तुएं भी सत्य या झूठी हो सकती हैं (देखें): मान [â |? | |] यदि आवश्यक हो, तो बूलियन मान में कनवर्ट किया जाता है। यदि मान है [â |? | |] तार्किक ऑपरेटरों a == 3 ? < कोड> var x = "abc"; var y = 3; var z = "xyz"; var a = x & amp; amp; वाई || z;
a == true होगा। "abc" के रूप में true का मूल्यांकन करने पर 3 के रूप में true का मूल्यांकन नहीं करता है। इसके बजाय यह परिणाम के रूप में 3 पैदा करता है। y = 0 को बदलते हैं तो a == "xyz" जिसका अर्थ है कि & amp; amp; amp; इलाज 0 के रूप में false । संख्या के रूप में किसी संख्या के इलाज के लिए क्या होगा?
0 , -0 , नल , झूठा , NaN , अपरिभाषित , या रिक्त स्ट्रिंग ( "" ), [यह] झूठी है किसी भी ऑब्जेक्ट या स्ट्रिंग "झूठे" सहित अन्य सभी मानों, बनाओ [एक ?? |] सच। || < / कोड> और & amp; amp; amp; true या झूठी वापस नहीं लौटते हैं, बल्कि वे पिछले तर्क को यह प्रभावित करते हैं कि वे सही हैं या नहीं झूठा ():
expr1 & amp; amp; expr2 एक ??? रिटर्न expr1 अगर इसे गलत में बदला जा सकता है; अन्यथा, expr2 देता है इस प्रकार, जब बूलियन मान के साथ प्रयोग किया जाता है, & amp; amp; & amp; amp; रिटर्न सही होता है अगर दोनों operands सत्य हैं; अन्यथा, झूठी वापसी करता है। expr1 || Expr2 एक ??? रिटर्न expr1 यदि इसे सत्य पर बदला जा सकता है; अन्यथा, expr2 देता है इस प्रकार, जब बूलियन मानों के साथ प्रयोग किया जाता है, = रिटर्न सही होता है यदि एक ऑपरेंड सही है; यदि दोनों झूठे हैं, तो झूठी वापसी करता है।
Comments
Post a Comment