Строка JavaScript Выдерживает сравнение ==, иногда перестал работать

Отказ от ответственности - Я работаю в компании, которая занимается этим сервисом, связанным с ниже.

Вы также можете использовать службу тестирования электронной почты, например Mailosaur . Некоторые из них (включая нашу) поставляются с API для интеграции в ваши тесты.

Таким образом, если вы столкнетесь с проблемой, у вас будет кто-то другой, кто сделает за вас новые функции и т.д.

29
задан Eric Leschinski 29 October 2013 в 02:59
поделиться

3 ответа

Попробуйте записать значение responseText в другую переменную перед вводом этого блока кода, на случай, если переменная где-то там обновляется.

У меня нет такой большой опыт прямого использования XmlHttpRequest, но я знаю, что javascript имеет ряд мест, где он использует изменчивые ссылки на объекты интерфейса, которые могут изменяться во время выполнения, а не простое значение.

2
ответ дан 28 November 2019 в 00:57
поделиться

Try using === to match exactly (type and value). This is the recommended comparison operator in javascript.

Check the datatypes of the strings to make sure, and look for hidden unicode or control characters in both strings.

4
ответ дан 28 November 2019 в 00:57
поделиться

У меня была аналогичная проблема, когда две явно идентичные струны не были бы равны, и я выдергивал волосы, пытаясь ее решить, поэтому я сделал следующее:

for (var c=0; c<string_1.length; c++) {
    if (string_1.charCodeAt(c) != string_2.charCodeAt(c)) {
        alert('c:'+c+' '+string_1.charCodeAt(c)+'!='+string_2.charCodeAt(c));
        valid = false;
    }
}

И я обнаружил, что последний символ в одной строке был 10, а последний символ в другой - 13, я думал, что обе строки завершаются нулем, но это не так.

13
ответ дан 28 November 2019 в 00:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: