निम्न कोड कभी-कभी झूठे का मूल्यांकन कैसे कर सकता है?जावास्क्रिप्ट स्ट्रिंग तुलना == कभी-कभी विफल रहता है
(transport.responseText == '1' ||
transport.responseText == 'CARD_VALID')
मेरे जावा स्क्रिप्ट कोड:
if (transport.responseText == '1' ||
transport.responseText == 'CARD_VALID') {
// do something.
}
else if (transport.responseText == 'CARD_INVALID' ||
transport.responseText == 'INVALID_CHECKSUM') {
// do something else....
}
else {
new Ajax.Request('/report_error.php?responseText='+transport.responseText);
// report error to user
}
क्या जावास्क्रिप्ट स्ट्रिंग तुलना ==
झूठी वापस जाने के लिए जब तार समान हैं का कारण बन सकता?
जावास्क्रिप्ट समानता ऑपरेटर '==' छोटी नहीं है, यह असफल नहीं होता है। यदि बाएं और दाएं स्ट्रिंग में एक ही सामग्री है तो यह सच हो जाएगा। यदि यह झूठी वापसी कर रहा है तो या तो: 1. तार समान नहीं हैं। 2. एक स्ट्रिंग से पहले और बाद में व्हाइटस्पेस है, या 3. एक स्ट्रिंग में छुपे हुए नियंत्रण वर्ण या यूनिकोड वर्ण हैं। –