[英]How do you sort or compare Strings in JavaScript based on a certain locale?
我知道您可以使用一個名為String.prototype.localeCompare的函數,並且可以將第二個區域設置作為第二個參數發送。
string.localeCompare(compareString [,locales [,options]])
但是,如果您查看瀏覽器兼容性表,則只有Chrome支持。
如何基於特定語言環境對JavaScript中的字符串進行排序或比較?
所有大型網站(例如ebay或Amazon)如何做到這一點? 他們必須在前端進行某種String排序。
也許您需要排序,而不是比較?
Javascript數組sort
方法按其Unicode (非ASCII)代碼對字符串進行排序。 您可以對字符串數組進行排序以按字母順序獲取它。
['Собака', 'Кошка'].sort()
會將數組排序為["Кошка", "Собака"]
,在Ru_ru語言環境中正確。
您可以像這樣添加比較功能:
['Собака', 'Кошка', 'Свекла'].sort(function(a, b) {
return a[1] > b[1]?1:-1;
})
Javascript將逐字符比較Unicode字符的字符串。 在我的示例中,compare在本機低級代碼的a[1] > b[1]
內部。 返回-1或1需要sort函數來替換數組元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.