Javascript string comparison fails when comparing unicode characters
I want to compare two strings in JavaScript that are the same, and yet the equality operator == returns false. One string contains a special character (eg. the danish å ). JavaScript code: var filenameFromJS = "Designhåndbog.pdf"; var filenameFromServer = "Designhåndbog.pdf"; print(filenameFromJS == filenameFromServer); // This prints false why? The solution What worked for me is unicode normalization as slevithan pointed out. I forked my original jsfiddle to make a version using the normalization lib suggested by slevithan. Link: http://jsfiddle.net/GWZ8j/1/ . Unlike what some other people