JavaScript localeCompare() 方法
定義和用法
用本地特定的順序來比較兩個(gè)字符串。
語法
stringObject.localeCompare(target)
參數(shù) | 描述 |
---|---|
target | 要以本地特定的順序與 stringObject 進(jìn)行比較的字符串。 |
返回值
說明比較結(jié)果的數(shù)字。如果 stringObject 小于 target,則 localeCompare() 返回小于 0 的數(shù)。如果 stringObject 大于 target,則該方法返回大于 0 的數(shù)。如果兩個(gè)字符串相等,或根據(jù)本地排序規(guī)則沒有區(qū)別,該方法返回 0。
說明
把 < 和 > 運(yùn)算符應(yīng)用到字符串時(shí),它們只用字符的 Unicode 編碼比較字符串,而不考慮當(dāng)?shù)氐呐判蛞?guī)則。以這種方法生成的順序不一定是正確的。例如,在西班牙語中,其中字符 “ch” 通常作為出現(xiàn)在字母 “c” 和 “d” 之間的字符來排序。
localeCompare() 方法提供的比較字符串的方法,考慮了默認(rèn)的本地排序規(guī)則。ECMAscript 標(biāo)準(zhǔn)并沒有規(guī)定如何進(jìn)行本地特定的比較操作,它只規(guī)定該函數(shù)采用底層操作系統(tǒng)提供的排序規(guī)則。
實(shí)例
在本例中,我們將用本地特定排序規(guī)則對(duì)字符串?dāng)?shù)組進(jìn)行排序:
var str; str.sort (function(a,b){return a.localeCompare(b)})