JavaScript String localeCompare() メソッド

定義と使用方法

localeCompare() メソッドは現在の言語環境で二つの文字列を比較します。

localeCompare() メソッドがソート順序を返します -11 または 0(前に、後に、または等しいことを示します)。

現在の言語環境はブラウザの言語設定に基づいています。

インスタンス

例1

「ab」と「cd」を比較します:

let text1 = "ab";
let text2 = "cd";
let result = text1.localeCompare(text2);

自分で試してみてください

例2

let text1 = "cd";
let text2 = "ab";
let result = text1.localeCompare(text2);

自分で試してみてください

例3

let text1 = "ab";
let text2 = "ab";
let result = text1.localeCompare(text2);

例4

自分で試してみてください

let text1 = "A";
let text2 = "a";
let result = text1.localeCompare(text2);

自分で試してみてください

構文

string.localeCompare(target)

パラメータ

パラメータ 説明
target 必須です。比較する文字列です。

返り値

タイプ 説明
数字

以下の3つの値のうちの1つです:

  • -1、文字列がtargetの前ろに配置されている場合
  •  0、二つの文字列が等しい場合
  •  1、文字列がtargetの後ろに配置されている場合

技術的詳細

返り値

比較結果を示す数字を返します。

もし string より小さい targetそれとも localeCompare() マイナス0より小さい数を返します。

もし string より targetそれ以外の場合、このメソッドは0より大きな数を返します。

二つの文字列が等しい場合、またはローカルソートルールに基づいて区別がない場合、このメソッドは0を返します。

説明

文字列を < および > 演算子が文字列に適用される場合、ローカルのソートルールを考慮せずに、Unicodeエンコーディングの文字に基づいて文字列を比較します。この方法で生成される順序は必ずしも正確ではありません。例えば、スペイン語では、文字「ch」が通常「c」と「d」の間に配置されてソートされます。

localeCompare() メソッドはデフォルトのローカルソートルールを考慮して文字列を比較する方法を提供します。ECMAScript標準では、ローカル特別な比較操作の方法は規定されていません。この関数は、ベースラインのオペレーティングシステムが提供するソートルールを使用することのみ規定されています。

ブラウザのサポート

localeCompare() ECMAScript1 (ES1) の特性です。

すべてのブラウザは完全に ES1 (JavaScript 1997) をサポートしています:

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
サポート サポート サポート サポート サポート サポート

関連ページ

JavaScript 字符串

JavaScript 字符串メソッド

JavaScript 字符串検索