मैं जावास्क्रिप्ट में दो तारों की तुलना करना चाहता हूं, और फिर भी समानता ऑपरेटर ==
झूठा रिटर्न देता है। एक स्ट्रिंग में एक विशेष चरित्र होता है (उदाहरण के लिए डैनिश å
)।यूनिकोड वर्णों की तुलना करते समय जावास्क्रिप्ट स्ट्रिंग तुलना विफल हो जाती है
जावा स्क्रिप्ट कोड:
var filenameFromJS = "Designhåndbog.pdf";
var filenameFromServer = "Designhåndbog.pdf";
print(filenameFromJS == filenameFromServer); // This prints false why?
समाधान क्या मेरे लिए काम किया यूनिकोड सामान्य रूप slevithan बताया है।
मैंने अपने मूल jsfiddle को स्लेविथान द्वारा सुझाए गए सामान्यीकरण lib का उपयोग करके एक संस्करण बनाने के लिए फोर्क किया। लिंक: http://jsfiddle.net/GWZ8j/1/।
'के बारे में ==' 'बनाम ===' http://stackoverflow.com/questions/359494 यह लेख देखें/जावास्क्रिप्ट-बनाम-करता-यह-पदार्थ-जो-बराबर-ऑपरेटर-i-use – Steve
@Steve जब दोनों ऑपरेंड एक ही प्रकार के होते हैं, तो इससे कोई फर्क नहीं पड़ता कि आप ढीले या सख्त तुलना का उपयोग करते हैं। – PointedEars