Intl.Collator

この記事は編集レビューを必要としています。ぜひご協力ください

この翻訳は不完全です。英語から この記事を翻訳 してください。

概要

Intl.Collatorオブジェクトは言語に依存した文字列の比較を可能にするオブジェクトであるcollatorsに対するコンストラクタです。

構文

new Intl.Collator([locales[, options]])
Intl.Collator.call(this[, locales[, options]])

引数

locales

任意。BCP47言語タグをもつ文字列、または、そのような文字列の配列。locales引数の一般的な形式と解釈のために、Intl pageを確かめて下さい。次のUnicode拡張キーは受け入れられます。:

co
特定のロケールのバリアントの照合。可能な値は、下記のとおりです。: "big5han", "dict", "direct", "ducet", "gb2312", "phonebk", "phonetic", "pinyin", "reformed", "searchjl", "stroke", "trad", "unihan". "standard"値と"search"値は無視されます。; optionsプロパティusageによって置き換えられます。 (下記参照).
kn
数値照合を使用するかどうか、その結果 "1" < "2" < "10"。可能な値は"true""false"です。このオプションはoptionsプロパティ、または、Unicode拡張キーを通して設定されます。; 両方が与えられたら、options プロパティは優先されます。
kf
大文字または小文字は最初にソートする必要があるかどうか。可能な値は"upper", "lower","false"です (ローケルのデフォルトを使用します)。このオプションは、optionsプロパティ、または、Unicode拡張キーを通して設定されます。; 両方が与えられたら、options プロパティは優先されます。
options

任意。次のプロパティの一部またはすべてを持つオブジェクト:

localeMatcher
使用するローケルマッチングアルゴリズム。可能な値は、 "lookup""best fit"です。デフォルトは"best fit"です。このオプションの詳細について、Intl pageを確かめて下さい。
usage
その比較がソートのためかマッチング文字列の検索のためかどうか。可能な値は、"sort""search"です。デフォルトは"sort"です。
sensitivity

文字列の違いはゼロ以外の結果値につながります。可能な値は下記のとおりです。:

  • "base": ベース文字が異なる文字列だけは、不等比較します。例えば: a ≠ ba = áa = A
  • "accent": ベース文字やアクセントやその他の識別記号が異なる文字列だけは、不等比較します。 例: a ≠ ba ≠ áa = A
  • "case": ベース文字またはケースが異なる文字列だけは、不等比較します。 例: a ≠ ba = áa ≠ A
  • "variant": ベース文字、アクセントやその他の識別記号、またはケースが異なる文字列は、不等比較します。他の違いも考慮され得ます。例: a ≠ ba ≠ áa ≠ A

デフォルトは"sort"の使用に対して "variant"です。"search"の使用に対してはローケル依存です。

ignore­Punctua­tion
句読点を無視する必要があるかどうか。可能な値は truefalseです。デフォルトはfalseです。
numeric
数値照合を使用するかどうか。その結果、 "1" < "2" < "10"。可能な値はtruefalseです。デフォルトはfalseです。このオプションは、optionsプロパティを通してかUnicode拡張キーを通して設定されます。両方が与えられ場合、options プロパティが優先されます。実装は、このプロパティをサポートする必要はありません。
caseFirst
大文字または小文字かどうかを最初に並べ替える必要があります。可能な値は"upper""lower""false"(ローケルのデフォルトを使用します)です。デフォルトは"false"です。このオプションは、optionsプロパティを通してかUnicode拡張キーを通して設定されます。両方が与えられたら、options プロパティが優先されます。実装は、このプロパティをサポートする必要はありません。

説明

プロパティ

Intl.Collator.prototype
すべてのオブジェクトにプロパティを追加できます。

メソッド

Intl.Collator.supportedLocalesOf()
実行時のデフォルトロケールにフォールバックしなくても、サポートされて提供されるロケールのものを含む配列を返します。

Collator インスタンス

プロパティ

Collator インスタンスはプロトタイプから次のプロパティを継承します。:

Intl.Collator.prototype.compare
Getter; returns a function that compares two strings according to the sort order of this Intl.Collator object.
Intl.Collator.prototype.constructor
A reference to Intl.Collator.

Methods

Collator インスタンスはプロトタイプから次のメソッドを継承します。:

Intl.Collator.prototype.resolvedOptions()
Returns a new object with properties reflecting the locale and collation options computed during initialization of the object.

例: Collatorを使う

次の例では、前に、後に、または別のと同じレベルで発生した文字列に別の潜在的な結果を実証します。:

console.log(new Intl.Collator().compare('a', 'c')); // → a negative value
console.log(new Intl.Collator().compare('c', 'a')); // → a positive value
console.log(new Intl.Collator().compare('a', 'a')); // → 0

上記のコードに示された結果は、ブラウザ間とブラウザのバージョン間で変化し得ることに注意してください。これはその値が実装固有であるからです。すなわち、仕様では前と後の値は負及び正であることのみが必要です。

例: localesを使う

Collator.prototype.compare()によって与えられる結果は言語間で異なります。アプリケーションのユーザインターフェイスで使用される言語のソート順を取得するために、locales引数を使用して、その言語(おそらくいくつかのフォールバック言語)を指定してください。:

// in German, ä sorts with a
console.log(new Intl.Collator('de').compare('ä', 'z'));
// → a negative value

// in Swedish, ä sorts after z
console.log(new Intl.Collator('sv').compare('ä', 'z'));
// → a positive value

例: optionsを使う

Collator.prototype.compare()によって与えられる結果はoptions引数を使用してカスタマイズされます。:

// in German, ä has a as the base letter
console.log(new Intl.Collator('de', { sensitivity: 'base' }).compare('ä', 'a'));
// → 0

// in Swedish, ä and a are separate base letters
console.log(new Intl.Collator('sv', { sensitivity: 'base' }).compare('ä', 'a'));
// → a positive value

仕様

仕様 状況 コメント
ECMAScript Internationalization API 1.0 (ECMA-402)
Intl.Collator の定義
標準 初期定義。

ブラウザ実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
基本サポート 24 29 (29) 11 15 未サポート
機能 Android Chrome for Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
基本サポート 未サポート 26 未サポート
バグ 864843
未サポート 未サポート 未サポート

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: shide55, Mingun
 最終更新者: shide55,