Как это может быть возможным:charCodeAt не ведет себя, как и ожидалось
var string1 = "", string2 = "";
//comparing the charCode
console.log(string1.charCodeAt(0) === string2.charCodeAt(0)); //true
//comparing the character
console.log(string1 === string2.substring(0,1)); //false
//This is giving me a headache.
http://jsfiddle.net/DerekL/B9Xdk/
Если их символьные коды одинаковы в обеих строках, сравнивая характер должен сам вернуться true
. Это правда, когда я положил a
и ab
. Но когда я вставляю эти строки, он просто ломается.
Некоторые говорили, что это может быть проблема с кодировкой. Но поскольку он отлично работает, когда в строковом литерале есть только один символ, я предполагаю, что кодировка не имеет к этому никакого отношения.
(Этот вопрос решает основную проблему в моих предыдущих вопросах Не волнуйтесь, я удалил их уже.).
'string2.substring (0,1)' фактически дает пустую строку – baldrs
@baldrs - [Я проверял] (http://jsfiddle.net/DerekL/BLGYu/), он не пуст. Он просто имеет нулевую ширину. –
'' .length' yields '4' :) –