用本地特定的顺序来比较两个字符串。
参数 | 描述 |
---|---|
target | 要以本地特定的顺序与 stringObject 进行比较的字符串。 |
说明比较结果的数字。如果 stringObject 小于 target,则 localeCompare() 返回小于 0 的数。如果 stringObject 大于 target,则该方法返回大于 0 的数。如果两个字符串相等,或根据本地排序规则没有区别,该方法返回 0。
把 < 和 > 运算符应用到字符串时,它们只用字符的 Unicode 编码比较字符串,而不考虑当地的排序规则。以这种方法生成的顺序不一定是正确的。例如,在西班牙语中,其中字符 “ch” 通常作为出现在字母 “c” 和 “d” 之间的字符来排序。
localeCompare() 方法提供的比较字符串的方法,考虑了默认的本地排序规则。ECMAscript 标准并没有规定如何进行本地特定的比较操作,它只规定该函数采用底层操作系统提供的排序规则。
在本例中,我们将用本地特定排序规则对字符串数组进行排序:
var array= ["a", "b", "d", "c"];array= array.sort (function(item1,item2){ return item1.localeCompare(item2)})结果是:
["a", "b", "c", "d"]此方法的主要用途就是将一些数组等按照本地操作系统提供的排序规则进行排序,也就是按照英文字母a、b、c、d……的顺序来进行排序,为我们提供了一种简单的字母排序方法。
新闻热点
疑难解答