HOWTO · JavaScript
JavaScript で文字列を比較する
JavaScript は、2つの文字列を localeCompare()メソッドと比較して、結果を-1、1、0 で返します。これは、文字列が同等の文字列と一致する場合、メソッドは 0 を返し、より大きい場合は 1 を返し、そうでない場合は-1 を返します。
JavaScript で文字列を比較する場合、対応するタスクはメソッド localeCompare() によって実行されます。望ましい場合に終了できる関数を定義することもできます。
ここでは、2つの文字列を比較する 2つの方法について説明します。1つは localeCompare() メソッドによるもので、もう 1つは user-defined 関数によるものです。
JavaScript の localeCompare() メソッドを使用して文字列を比較する
この場合、string1 と string2 を比較します。駆動された結果は、-1、0、1 の 3つのリターンタイプを提供します。
string1がstring2の後に(アルファベット順または時系列で)string2の後にある場合、戻り値は1になります。string1がstring2の前(より小さい)の場合、メソッドは-1を返します。- 同じ場合、戻り値は
0になります。
次の例では、文字列を比較するための localeCompare() メソッドに焦点を当てます。
コードスニペット:
var string1 = 'apple';
var string2 = 'banana';
var string3 = 'banana';
console.log(string1.localeCompare(string2));
console.log(string2.localeCompare(string1));
console.log(string3.localeCompare(string2));
出力:
-1
1
0
JavaScript のユーザ定義関数で 2つの文字列を比較する
ここでは、2つの比較可能な文字列を引数として取る関数 compare を初期化しました。リターンケースを定義する条件付きセグメントもあります。その結果、ファンクションドライブに応じてリターンケースが返されます。
コードスニペット:
var string1 = 'apple';
var string2 = 'banana';
var string3 = 'banana';
function compare(string1, string2) {
if (string1 < string2) {
return -1;
} else if (string1 > string2) {
return 1;
} else {
return 0;
}
}
console.log(compare(string1, string2));
console.log(compare(string2, string1));
console.log(compare(string2, string3));
出力:
-1
1
0