日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

javascript中涉及到汉字的比较

發布時間:2025/4/5 javascript 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 javascript中涉及到汉字的比较 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在使用js中的"=="進行字符串的比較時,發現在英文情況下是ok的,但在中文比較時則不行了。

在網上搜索,提供了一個解決方法,使用

stringObject.localeCompare(target)

來解決中文比較問題。

string_a.localeCompare(string_b);/* Returns:0: exact match-1: string_a < string_b1: string_b > string_b*/

這個方法的用法是:確定兩個字符串在當前區域設置中是否相等。

微軟資料如下:

http://msdn.microsoft.com/zh-cn/library/ie/62b7ahzy(v=vs.94).aspx

localeCompare 方法 (String) (JavaScript)

?

確定兩個字符串在當前區域設置中是否相等。

stringVar.localeCompare(stringExp[, locales][, options]) 參數 stringVar

必需。?要比較的第一個字符串。

stringExp

必需。?要比較的第二個字符串。

locales

可選。?包含一種或多種語言或區域設置標記的區域設置字符串數組。?如果包含多個區域設置字符串,請以降序優先級對它們進行排列,確保首個條目為首選區域位置。?如果省略此參數,則使用 JavaScript 運行時的默認區域設置。?此參數必須符合?BCP 47?標準;請參見?Intl.Collator 對象了解詳細信息。

options

可選。?包含指定比較選項的一個或多個特性的對象。請參見?Intl.Collator 對象了解詳細信息。

備注

對于比較字符串,可以指定?String?對象或字符串文本。

從 Internet Explorer 11 開始,localeCompare?在內部使用?Intl.Collator?對象進行比較,添加對?locales?和options?參數的支持。?有關這些參數的詳細信息,請參見?Intl.Collator?和?Intl.Collator.compare。

重要事項

locales?和?options?參數在所有的文檔模型和瀏覽器版本中均不支持。?有關詳細信息,請參見“要求”部分。

localeCompare?方法對?stringVar?和?stringExp?執行區分區域設置的字符串比較,并返回以下結果之一,這取決于系統默認區域設置的排序順序:

  • -1,如果?stringVar?排在?stringExp?之前。

  • +1,如果?stringVar?排在?stringExp?的后面。

  • 如果兩個字符串相等,則為 0(零)。

示例

下面的代碼演示如何使用?localeCompare

JavaScript var str1 = "def"; var str2 = "abc"document.write(str1.localeCompare(str2) + "<br/>");// Output: 1 var str3 = "ghi";document.write(str1.localeCompare(str3)+ "<br/>");// Output: -1 var str4 = "def";document.write(str1.localeCompare(str4));// Output: 0

下面的代碼顯示如何使用具有德語(德國)區域設置的?localeCompare

JavaScript var str1 = "a"; var str2 = "b";document.write(str1.localeCompare(str2, "de-DE"));// Output // - 1

下面的示例顯示如何使用具有德語(德國)區域設置和指定德語電話簿排序順序的區域設置特定擴展的localeCompare。?此示例演示了特定于區域設置的差異。

JavaScript var arr = ["?", "ad", "af", "a"];document.write(arr[0].localeCompare(arr[1], "de-DE-u-co-phonebk")); // Returns 1 document.write (arr[0].localeCompare(arr[2], "de-DE-u-co-phonebk")); // Returns -1 document.write (arr[0].localeCompare(arr[3], "de-DE-u-co-phonebk")); // Returns 1document.write (arr[0].localeCompare(arr[1], "de-DE")); // Returns -1 document.write (arr[0].localeCompare(arr[2], "de-DE")); // Returns -1 document.write (arr[0].localeCompare(arr[3], "de-DE")); // Returns 1 要求

?

在以下文檔模式中受支持:Quirks、Internet Explorer 6 標準模式、Internet Explorer 7 標準模式、Internet Explorer 8 標準模式、Internet Explorer 9 標準模式、Internet Explorer 10 標準模式和 Internet Explorer 11 標準模式。此外,也在應用商店應用(Windows 8 和 Windows Phone 8.1)中受支持。請參閱版本信息。

locales?和?options?參數:

?

在 Internet Explorer 11 標準文檔模式下支持此項。此外,也在應用商店應用(Windows 8.1 和 Windows Phone 8.1)中受支持。請參閱版本信息。

在以下文檔模式中不受支持:Quirks、Internet Explorer 6 標準模式、Internet Explorer 7 標準模式、Internet Explorer 8 標準模式、Internet Explorer 9 標準模式和 Internet Explorer 10 標準模式。在 Windows 8 中不受支持。

轉載于:https://www.cnblogs.com/davidwang456/p/4167033.html

總結

以上是生活随笔為你收集整理的javascript中涉及到汉字的比较的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。