【发布时间】:2009-05-14 14:08:32
【问题描述】:
以下代码有时如何评估为假?
(transport.responseText == '1' ||
transport.responseText == 'CARD_VALID')
我的 JavaScript 代码:
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
}
当字符串相同时,什么会导致 JavaScript 字符串比较 == 返回 false?
【问题讨论】:
-
JavaScript 相等运算符
==没有错误,它不会失败。如果左侧和右侧的字符串内容相同,则返回 true。如果它返回 false 那么: 1. 字符串不一样。 2.一个字符串前后有空格,或3.一个字符串中有隐藏的控制字符或unicode字符。 -
我通过添加
.trim()解决了,但在比较其他值时也可以使用.toString()
标签: javascript string compare