Intl.Collator.prototype.compare

Intl.Collator.prototype.compare() メソッドは、2つの文字列をこの Collator オブジェクトのソート順に従って比較します。

構文

collator.compare(string1, string2)

引数

string1
string2
互いに比較する文字列です。

解説

compare ゲッター関数は、 string1string2 をこの Collator オブジェクトのソート順に従って比較した結果を数値で返します。 string1string2 の前にくる場合は負の値、 string1string2 の後にくる場合は正の値、等しいとみなされる場合は 0 を返します。

配列の並べ替えにおける compare の使用

配列の並べ替えのために compare ゲッター関数を使用します。なお、この関数は、取得元の collator にバインドされているので、直接 Array.prototype.sort() に渡すことができます。

var a = ['Offenbach', 'Österreich', 'Odenwald'];
var collator = new Intl.Collator('de-u-co-phonebk');
a.sort(collator.compare);
console.log(a.join(', '));
// → "Odenwald, Österreich, Offenbach"

配列内の文字列の検索のために compare ゲッター関数を使用します。

var a = ['Congrès', 'congres', 'Assemblée', 'poisson'];
var collator = new Intl.Collator('fr', { usage: 'search', sensitivity: 'base' });
var s = 'congres';
var matches = a.filter(v => collator.compare(v, s) === 0);
console.log(matches.join(', '));
// → "Congrès, congres"

仕様書

仕様書
ECMAScript Internationalization API (ECMA-402)
Intl.Collator.prototype.compare の定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
compareChrome 完全対応 24Edge 完全対応 12Firefox 完全対応 29IE 完全対応 11Opera 完全対応 15Safari 完全対応 10WebView Android 完全対応 4.4Chrome Android 完全対応 25Firefox Android 完全対応 56Opera Android 完全対応 14Safari iOS 完全対応 10Samsung Internet Android 完全対応 1.5nodejs 完全対応 0.12
補足
完全対応 0.12
補足
補足 Before version 13.0.0, only the locale data for en-US is available by default. See the Collator() constructor for more details.

凡例

完全対応  
完全対応
実装ノートを参照してください。
実装ノートを参照してください。

関連情報