JavaScript 字串 localeCompare() 方法



JavaScript 字串 localeCompare() 方法用於根據瀏覽器當前使用的區域設定比較兩個字串。它返回一個數字,指示此字串在排序順序中是在給定字串之前、之後還是與之相同。

以下是描述此方法返回的數字的一些語句:

  • 正數 (+1) 表示給定字串出現在比較字串之後。
  • 負數 (-1) 表示給定字串出現在比較字串之前。
  • 如果兩個字串都等價,則返回零 (0)

語法

以下是 JavaScript 字串 localeCompare() 方法的語法:

localeCompare(compareString, locales, options)

引數

此方法接受三個名為“compareString”、“locales”和“options”的引數,如下所述:

  • compareString − 需要比較的字串。
  • locales (可選) − 當前瀏覽器的區域設定。
  • options (可選) − 用於調整輸出格式的物件。

返回值

如果兩個字串都等價,此方法返回數字 0;如果給定字串出現在比較字串之前,則返回 -1;如果給定字串出現在比較字串之後,則返回 +1。

示例 1

當未指定區域設定或選項時,它會根據字串中字元的 Unicode 值執行基本比較。如果字串等價,則返回 0;否則,返回一個正數或負數,指示它們的順序。

在以下程式中,我們使用 JavaScript localeCompare() 方法將字串“Tutorialspoint”與給定字串“Tutorialspoint”進行比較。

<html>
<head>
<title>JavaScript String localeCompare() Method</title>
</head>
<body>
<script>
   const str = "TutorialsPoint";
   const compare_str = "TutorialsPoint";
   document.write("Original string: ", str);
   document.write("<br>Compare string: ", compare_str);
   document.write("<br>The str.localeCompare(compare_str) method returns: ", str.localeCompare(compare_str));
</script>    
</body>
</html>

輸出

以上程式返回 0。

Original string: TutorialsPoint
Compare string: TutorialsPoint
The str.localeCompare(compare_str) method returns: 0

示例 2

如果給定字串出現在比較字串之後,則 localeCompare() 方法返回 1

以下是 JavaScript 字串 localeCompare() 方法的另一個示例。在此示例中,我們使用此方法使用當前區域設定“en”將字串“hello”與給定字串“HELLO”進行比較。

<html>
<head>
<title>JavaScript String localeCompare() Method</title>
</head>
<body>
<script>
   const str = "HELLO";
   const compare_str = "hello";
   const locale = "en";
   document.write("Original string: ", str)
   document.write("<br>Compare string: ", compare_str);
   document.write("<br>Current locales: ", locale);
   document.write("<br>The str.localeCompare(compare_str) method returns: ", str.localeCompare(compare_str, locale));
</script>    
</body>
</html>

輸出

執行上述程式後,它將返回 1。

Original string: HELLO
Compare string: hello
Current locales: en
The str.localeCompare(compare_str) method returns: 1

示例 3

當我們將所有三個引數 compareString、locales 和 options 傳遞給 localeCompare() 方法時,它將使用當前區域設定將 compareString 與給定字串進行比較,並且輸出格式將根據指定的選項進行調整。

<html>
<head>
<title>JavaScript String localeCompare() Method</title>
</head>
<body>
<script>
   const str = "tutorialspoint";
   const compare_str = "TUTORIALSPOINT";
   const locale = "en";
   const option = {sensitivity: 'base'};
   document.write("Original string: ", str)
   document.write("<br>Compare string: ", compare_str);
   document.write("<br>Current locales: ", locale);
   document.write("<br>Options: ", option.sensitivity);
   document.write("<br>The str.localeCompare(compare_str) method returns: ", str.localeCompare(compare_str));
   document.write("<br>The str.localeCompare(compare_str, locale, option) method returns: ", str.localeCompare(compare_str, locale, option));
</script>    
</body>
</html>

輸出

以上程式產生以下輸出 -

Original string: tutorialspoint
Compare string: TUTORIALSPOINT
Current locales: en
Options: base
The str.localeCompare(compare_str) method returns: -1
The str.localeCompare(compare_str, locale, option) method returns: 0
廣告