यहाँ नौकरी के साक्षात्कार से पहले जावास्क्रिप्ट ऑनलाइन परीक्षण में सवालों में से एक है तुलना a == b
बनाने के लिए true
होने के लिए? (जैसे console.log(a == b) // true
)ऑब्जेक्ट्स 'ए == बी` की तुलना कैसे करें सच होने के लिए?</p> <pre><code>function F(){}; var a = new F(); var b = new F(); </code></pre> <p><strong>क्यू</strong>:
मैंने जवाब है कि यह असंभव है क्योंकि a
और b
F
के दो विभिन्न उदाहरण हैं और गैर-पुरातन के मामले में जे एस में बराबर तुलना संदर्भ तुलना करती है।
लेकिन कुछ समय पहले मैंने एक्सेल रौशमेयर द्वारा "जावास्क्रिप्ट में नकली ऑपरेटर ओवरलोडिंग" लेख पढ़ा है: http://www.2ality.com/2011/12/fake-operator-overloading.html - और मुझे आश्चर्य है कि वस्तुओं की तुलना में नकली ऑपरेटर अधिभार के लिए हैक है या नहीं?
से नई को हटाने के द्वारा 'JSON.stringify (एक) == JSON.stringify (ख)' –
@roasted, वास्तव में नहीं। विषय में आपने उत्तर दिया है कि सही तरीके से वस्तुओं की तुलना कैसे करें। यहाँ एक और मामला है। – jsguff
@jsguff क्षमा करें, बस शीर्षक पढ़ें मैं जल्दबाजी के निष्कर्ष पर आया –