ECMAScript中涉及到字符串的大小写转换的方法有4 个:toLowerCase()、toLocaleLowerCase()、toUpperCase()和toLocaleUpperCase()。其中,toLowerCase()和toUpperCase()是两个经典的方法,借鉴自java.lang.String中的同名方法。而 toLocaleLowerCase()和toLocaleUpperCase()方法则是针对特定地区的实现。对有些地区来说,针对地区的方法与其通用的方法得到的结果相同,但少数语言(如土耳其语)会为Unicode大小写转换应用特殊的规则,这时候就必须使用针对地区的方法来保证实现正确的转换。例如:
var stringValue = "hello world"; alert(stringValue.toLocalUpperCase());//HELLO WORLD alert(stringValue.toUpperCase());//HELLO WORLD alert(stringValue.toLocaleLowerCase());//hello world alert(stringValue.toLowerCase());//hello world
以上代码调用toLocaleUpperCase()和toUpperCase()都返回了“HEELO WORLD”,就像调用toLocaleLowerCase()和toLowerCase()都返回了“hello world”一样。一般来说,在不知道自己的代码将在哪种语言环境运行的情况下,还是针对使用地区的方法更稳妥一些。