Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does Javascript string.toLowerCase() follow Unicode standards in case-conversions?

I'm creating a browser-based form verification script that checks if the input doesn't have any uppercase characters according to Unicode Standards. My definition of an uppercase character is a character that has a lowercase mapping. If a certain character in the input string doesn't have a lowercase or uppercase mapping (like chinese characters) then it's alright (it should pass my validation).

I'm using UTF-8 encoding.

I'm planning to create a function that looks like this:

function hasUpper(str){
  if(str != str.toLowerCase()){
    return true
  }
  else {
    return false
  }
}

Will this work for my needs?

Thanks!

like image 663
Albert Avatar asked Aug 28 '10 13:08

Albert


2 Answers

Yes, that will work. Incidentally, the Boolean keywords are true and false, lower case. :)

like image 78
Robusto Avatar answered Oct 21 '22 15:10

Robusto


The question answered here seems to indicate that toLower and toUpper are Unicode-aware:Stack OverFlow

And this one goes into it in more detail (indicating that some mappings conflict with the real world):more Stack Overflow

Hope this helps!

like image 34
A. Wilson Avatar answered Oct 21 '22 15:10

A. Wilson