From 074785cea106179cb3305637055ab0a009ca74f2 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:42:52 -0500 Subject: initial commit --- .../intl/collator/compare/index.html | 125 ++++++++++++++ .../global_objects/intl/collator/index.html | 187 +++++++++++++++++++++ .../intl/collator/prototype/index.html | 108 ++++++++++++ .../intl/collator/resolvedoptions/index.html | 108 ++++++++++++ .../intl/collator/supportedlocalesof/index.html | 117 +++++++++++++ 5 files changed, 645 insertions(+) create mode 100644 files/ru/web/javascript/reference/global_objects/intl/collator/compare/index.html create mode 100644 files/ru/web/javascript/reference/global_objects/intl/collator/index.html create mode 100644 files/ru/web/javascript/reference/global_objects/intl/collator/prototype/index.html create mode 100644 files/ru/web/javascript/reference/global_objects/intl/collator/resolvedoptions/index.html create mode 100644 files/ru/web/javascript/reference/global_objects/intl/collator/supportedlocalesof/index.html (limited to 'files/ru/web/javascript/reference/global_objects/intl/collator') diff --git a/files/ru/web/javascript/reference/global_objects/intl/collator/compare/index.html b/files/ru/web/javascript/reference/global_objects/intl/collator/compare/index.html new file mode 100644 index 0000000000..bcb34c805e --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/intl/collator/compare/index.html @@ -0,0 +1,125 @@ +--- +title: Intl.Collator.prototype.compare +slug: Web/JavaScript/Reference/Global_Objects/Intl/Collator/compare +tags: + - Collator + - Internationalization + - JavaScript + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/Collator/compare +--- +
{{JSRef("Global_Objects", "Collator", "Intl,DateTimeFormat,NumberFormat")}}
+ +

Сводка

+

Свойство Intl.Collator.prototype.compare возвращает функцию-геттер, сравнивающую две строки согласно порядку сортировки соответствующего объекта {{jsxref("Global_Objects/Collator", "Collator")}}.

+ +

Синтаксис

+
collator.compare(string1, string2)
+ +

Параметры

+
+
string1
+
string2
+
Сравниваемые друг с другом строки.
+
+ +

Описание

+

Функция, возвращённая гетером compare, возвращает число, указывающее, как строки string1 и string2 сравниваются друг с другом в соответствии с порядком сортировки объекта {{jsxref("Global_Objects/Collator", "Collator")}}: отрицательное значение, если строка string1 предшествует строке string2; положительное значение, если строка string1 следует за строкой string2; 0, если строки считаются равными.

+ +

Примеры

+ +

Пример: использование функции compare для сортировки массива

+

Использование функции, возвращённой геттером compare, для сортировки массивов. Обратите внимание, что функция привязана к объекту {{jsxref("Global_Objects/Collator", "Collator")}}, из которого она была получена, так что её можно передавать в {{jsxref("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 для поиска в массиве

+

Использование функции, возвращённой геттером 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(function(v) {
+  return collator.compare(v, s) === 0;
+});
+console.log(matches.join(', '));
+// → "Congrès, congres"
+
+ +

Спецификации

+ + + + + + + + + + + + + +
СпецификацияСтатусКомментарии
{{SpecName('ES Int 1.0', '#sec-10.3.2', 'Intl.Collator.prototype.compare')}}{{Spec2('ES Int 1.0')}}Изначальное определение.
+ +

Совместимость с браузерами

+
{{CompatibilityTable}}
+
+ + + + + + + + + + + + + + + + + + + +
ВозможностьChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatChrome("24")}}{{CompatGeckoDesktop("29")}}{{CompatIE("11")}}{{CompatOpera("15")}}{{CompatNo}}
+
+
+ + + + + + + + + + + + + + + + + + + + + +
ВозможностьAndroidChrome для AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatNo}}{{CompatChrome("26")}} + {{CompatNo}}
+ {{bug("864843")}} +
{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Смотрите также

+ diff --git a/files/ru/web/javascript/reference/global_objects/intl/collator/index.html b/files/ru/web/javascript/reference/global_objects/intl/collator/index.html new file mode 100644 index 0000000000..cf3a3d3e52 --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/intl/collator/index.html @@ -0,0 +1,187 @@ +--- +title: Intl.Collator +slug: Web/JavaScript/Reference/Global_Objects/Intl/Collator +tags: + - Collator + - Internationalization + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/Collator +--- +
{{JSRef("Global_Objects", "Collator", "Intl,DateTimeFormat,NumberFormat")}}
+ +

Сводка

+

Объект Intl.Collator является конструктором сортировщиков — объектов, включающих языко-зависимое сравнение строк.

+ +

Синтаксис

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

Параметры

+
+
locales
+
+

Необязательный параметр. Строка с языковой меткой BCP 47, либо массив таких строк. Описание общей формы и интерпретации аргумента locales смотрите на {{jsxref("Global_Objects/Intl", "странице, посвящённой объекту Intl", "#Locale_identification_and_negotiation", 1)}}. Разрешены следующие ключи расширения Unicode:

+
+
co
+
Варианты сортировки для конкретных локалей. Возможные значения включают в себя: "big5han", "dict", "direct", "ducet", "gb2312", "phonebk", "phonetic", "pinyin", "reformed", "searchjl", "stroke", "trad" и "unihan". Значения "standard" и "search" игнорируются; они заменяются свойством usage аргумента options (смотрите ниже).
+
kn
+
Определяет, должно ли использоваться числовое сравнение, то есть, чтобы выполнялось условие "1" < "2" < "10". Возможными значениями являются "true" и "false". Эта опция может быть установлена через свойство аргумента options, либо через ключ расширения Unicode; если предоставлены оба значения, свойство аргумента options имеет приоритет.
+
kf
+
Определяет, буквы какого регистра должны идти первыми — верхнего или нижнего. Возможными значениями являются "upper", "lower" и "false" (используется значение по умолчанию из локали). Эта опция может быть установлена через свойство аргумента options, либо через ключ расширения Unicode; если предоставлены оба значения, свойство аргумента options имеет приоритет.
+
+
+
options
+
+

Необязательный параметр. Объект с некоторыми или всеми из следующих свойств:

+
+
localeMatcher
+
Используемый алгоритм сопоставления локалей. Возможными значениями являются "lookup" и "best fit"; значением по умолчанию является "best fit". Информацию по этой опции смотрите на {{jsxref("Global_Objects/Intl", "странице, посвящённой объекту Intl", "#Locale_negotiation", 1)}}.
+
usage
+
Определяет, используется ли сравнение для сортировки или для поиска совпадающих строк. Возможными значениями являются "sort" и "search"; значением по умолчанию является "sort".
+
sensitivity
+
+

Определяет, какие различия в строках должны приводить к ненулевому результату. Возможными значениями являются:

+
    +
  • "base": считаются различными только строки, отличающиеся базовыми буквами. Примеры: a ≠ b, a = á, a = A.
  • +
  • "accent": считаются различными только строки, отличающиеся базовыми буквами или акцентами и другими диакритическими знаками. Примеры: a ≠ b, a ≠ á, a = A.
  • +
  • "case": считаются различными только строки, отличающиеся базовыми буквами или регистром букв. Примеры: a ≠ b, a = á, a ≠ A.
  • +
  • "variant": считаются различными строки, отличающиеся базовыми буквами, акцентами и другими диакритическими знаками или регистром букв. Также во внимание могут приниматься и другие различия. Примеры: a ≠ b, a ≠ á, a ≠ A.
  • +
+

Значением по умолчанию является "variant" при использовании свойства usage, равного "sort", и зависит от локали при использовании свойства usage, равного "search".

+
+
ignore­Punctua­tion
+
Определяет, должна ли игнорироваться пунктуация. Возможными значениями являются true и false; значением по умолчанию является false.
+
numeric
+
Определяет, должно ли использоваться числовое сравнение, то есть, чтобы выполнялось условие "1" < "2" < "10". Возможными значениями являются true и false; значением по умолчанию является false. Эта опция может быть установлена через свойство аргумента options, либо через ключ расширения Unicode; если предоставлены оба значения, свойство аргумента options имеет приоритет. Реализации не обязаны поддерживать это свойство.
+
caseFirst
+
Определяет, буквы какого регистра должны идти первыми — верхнего или нижнего. Возможными значениями являются "upper", "lower" и "false" (используется значение по умолчанию из локали); значением по умолчанию является "false". Эта опция может быть установлена через свойство аргумента options, либо через ключ расширения Unicode; если предоставлены оба значения, свойство аргумента options имеет приоритет. Реализации не обязаны поддерживать это свойство.
+
+
+
+ +

Описание

+ +

Свойства

+
+
{{jsxref("Collator.prototype", "Intl.Collator.prototype")}}
+
Позволяет добавлять свойства ко всем объектам.
+
+ +

Методы

+
+
{{jsxref("Collator.supportedLocalesOf", "Intl.Collator.supportedLocalesOf()")}}
+
Возвращает массив, содержащий те из предоставленных локалей, которые поддерживаются без отката к локали по умолчанию среды выполнения.
+
+ +

Экземпляры объекта Collator

+ +

Свойства

+

Экземпляры Collator наследуют следующие свойства из своего прототипа:

+
{{page('/ru/docs/Web/JavaScript/Reference/Global_Objects/Collator/prototype', 'Properties')}}
+ +

Методы

+

Экземпляры Collator наследуют следующие методы из своего прототипа:

+
{{page('/ru/docs/Web/JavaScript/Reference/Global_Objects/Collator/prototype', 'Methods')}}
+ +

Примеры

+ +

Пример: использование Collator

+

Следующий пример демонстрирует различные потенциальные результаты для строки, находящейся до, после или на том же самом уровне, что и другая строка:

+
console.log(new Intl.Collator().compare('a', 'c')); // → отрицательное значение
+console.log(new Intl.Collator().compare('c', 'a')); // → положительное значение
+console.log(new Intl.Collator().compare('a', 'a')); // → 0
+
+

Обратите внимание, что результат, показанный в коде выше, может сильно различаться в зависимости от браузера и его версии. Происходит это потому, что возвращаемые значения зависят от реализации. То есть, спецификация требует только чтобы при следовании строки до значение было отрицательным, а после — положительным.

+ +

Пример: использование аргумента locales

+

Результаты, предоставляемые функцией {{jsxref("Collator.prototype.compare()")}} сильно различаются в зависимости от языка. Для получения порядка сортировки языка, используемого в пользовательском интерфейсе вашего приложения, убедитесь, что вы указали этот язык (и, возможно, несколько запасных языков) через аргумент locales:

+
// В немецком буква ä идёт рядом с буквой a
+console.log(new Intl.Collator('de').compare('ä', 'z'));
+// → отрицательное значение
+
+// В шведском буква ä следует после буквы z
+console.log(new Intl.Collator('sv').compare('ä', 'z'));
+// → положительное значение
+
+ +

Пример: использование аргумента options

+

Результат, предоставляемый функцией {{jsxref("Collator.prototype.compare()")}}, может быть настроен с помощью аргумента options:

+
// В немецком буква a является базовой для буквы ä
+console.log(new Intl.Collator('de', { sensitivity: 'base' }).compare('ä', 'a'));
+// → 0
+
+// В шведском буквы ä и a являются двумя разными базовыми буквами
+console.log(new Intl.Collator('sv', { sensitivity: 'base' }).compare('ä', 'a'));
+// → положительное значение
+
+ +

Спецификации

+ + + + + + + + + + + + + +
СпецификацияСтатусКомментарии
{{SpecName('ES Int 1.0', '#sec-10.1', 'Intl.Collator')}}{{Spec2('ES Int 1.0')}}Изначальное определение.
+ +

Совместимость с браузерами

+
{{CompatibilityTable}}
+
+ + + + + + + + + + + + + + + + + + + +
ВозможностьChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Базовая поддержка{{CompatChrome("24")}}{{CompatGeckoDesktop("29")}}{{CompatIE("11")}}{{CompatOpera("15")}}{{CompatNo}}
+
+
+ + + + + + + + + + + + + + + + + + + + + +
ВозможностьAndroidChrome для AndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Базовая поддержка{{CompatNo}}{{CompatChrome("26")}} + {{CompatNo}}
+ {{bug("864843")}} +
{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Смотрите также

+
{{page('/ru/docs/Web/JavaScript/Reference/Global_Objects/Intl', 'See_also')}}
diff --git a/files/ru/web/javascript/reference/global_objects/intl/collator/prototype/index.html b/files/ru/web/javascript/reference/global_objects/intl/collator/prototype/index.html new file mode 100644 index 0000000000..1a9983f373 --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/intl/collator/prototype/index.html @@ -0,0 +1,108 @@ +--- +title: Intl.Collator.prototype +slug: Web/JavaScript/Reference/Global_Objects/Intl/Collator/prototype +tags: + - Collator + - Internationalization + - JavaScript + - Property + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/Collator +--- +
{{JSRef("Global_Objects", "Collator", "Intl,DateTimeFormat,NumberFormat")}}
+ +

Сводка

+

Свойство Intl.Collator.prototype представляет объект прототипа конструктора {{jsxref("Global_Objects/Collator", "Intl.Collator")}}.

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Описание

+

Смотрите {{jsxref("Global_Objects/Collator", "Collator")}} для описания экземпляров Intl.NumberFormat.

+

Экземпляры {{jsxref("Global_Objects/Collator", "Intl.Collator")}} наследуются от Intl.NumberFormat.prototype. Изменения объекта прототипа наследуются всеми экземплярами {{jsxref("Global_Objects/Collator", "Intl.Collator")}}.

+ +

Свойства

+
+
Intl.Collator.prototype.constructor
+
Ссылка на {{jsxref("Global_Objects/Collator", "Intl.Collator")}}.
+
{{jsxref("Collator.compare", "Intl.Collator.prototype.compare")}}
+
Геттер; возвращает функцию, сравнивающую две строки согласно порядку сортировки этого объекта {{jsxref("Global_Objects/Collator", "Collator")}}.
+
+ +

Методы

+
+
{{jsxref("Collator.resolvedOptions", "Intl.Collator.prototype.resolvedOptions()")}}
+
Возвращает новый объект со свойствами, отражающими локаль и опции сравнения строк, вычисленные при инициализации объекта.
+
+ +

Спецификации

+ + + + + + + + + + + + + +
СпецификацияСтатусКомментарии
{{SpecName('ES Int 1.0', '#sec-10.2.1', 'Intl.Collator.prototype')}}{{Spec2('ES Int 1.0')}}Изначальное определение.
+ +

Совместимость с браузерами

+
{{CompatibilityTable}}
+
+ + + + + + + + + + + + + + + + + + + +
ВозможностьChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Базовая поддержка{{CompatChrome("24")}}{{CompatGeckoDesktop("29")}}{{CompatIE("11")}}{{CompatOpera("15")}}{{CompatNo}}
+
+
+ + + + + + + + + + + + + + + + + + + + + +
ВозможностьAndroidChrome для AndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Базовая поддержка{{CompatNo}}{{CompatChrome("26")}} + {{CompatNo}}
+ {{bug("864843")}} +
{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Смотрите также

+ diff --git a/files/ru/web/javascript/reference/global_objects/intl/collator/resolvedoptions/index.html b/files/ru/web/javascript/reference/global_objects/intl/collator/resolvedoptions/index.html new file mode 100644 index 0000000000..001b0a86ed --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/intl/collator/resolvedoptions/index.html @@ -0,0 +1,108 @@ +--- +title: Intl.Collator.prototype.resolvedOptions() +slug: Web/JavaScript/Reference/Global_Objects/Intl/Collator/resolvedOptions +tags: + - Collator + - Internationalization + - JavaScript + - Method + - NeedsExample + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/Collator/resolvedOptions +--- +
{{JSRef("Global_Objects", "Collator", "Intl,DateTimeFormat,NumberFormat")}}
+ +

Сводка

+

Метод Intl.Collator.prototype.resolvedOptions() возвращает новый объект со свойствами, отражающими локаль и параметры сравнения строк, вычисленные во время инициализации соответствующего объекта {{jsxref("Global_Objects/Collator", "Collator")}}.

+ +

Синтаксис

+
collator.resolvedOptions()
+ +

Описание

+

Возвращает новый объект со свойствами, отражающими локаль и параметры сравнения строк, вычисленные во время инициализации соответствующего объекта {{jsxref("Global_Objects/Collator", "Collator")}}. Объект содержит следующие свойства:

+
+
locale
+
Языковая метка BCP 47 реально используемой локали. Если во входной языковой метке BCP 47 запрошены какие-либо расширения Unicode, приведшие к этой локали, запрошенные и поддерживаемые для этой локали пары ключ-значение также будут включены в свойство locale.
+
usage
+
sensitivity
+
ignorePunctuation
+
Значения, предоставленные для этих свойств в аргументе options, либо значения по умолчанию.
+
collation
+
Значение, запрошенное ключом расширения Unicode "co", если он поддерживается для локали locale, либо значение "default".
+
numeric
+
caseFirst
+
Значения, предоставленные для этих свойств в аргументе options или запрошенные ключами расширения Unicode "kn" и "kf", либо значения по умолчанию. Если реализация не поддерживает эти свойства, они будут опущены.
+
+ +

Спецификации

+ + + + + + + + + + + + + +
СпецификацияСтатусКомментарии
{{SpecName('ES Int 1.0', '#sec-10.3.3', 'Intl.Collator.prototype.resolvedOptions')}}{{Spec2('ES Int 1.0')}}Изначальное определение.
+ +

Совместимость с браузерами

+
{{CompatibilityTable}}
+
+ + + + + + + + + + + + + + + + + + + +
ВозможностьChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatChrome("24")}}{{CompatGeckoDesktop("29")}}{{CompatIE("11")}}{{CompatOpera("15")}}{{CompatNo}}
+
+
+ + + + + + + + + + + + + + + + + + + + + +
ВозможностьAndroidChrome для AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatNo}}{{CompatChrome("26")}} + {{CompatNo}}
+ {{bug("864843")}} +
{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Смотрите также

+ diff --git a/files/ru/web/javascript/reference/global_objects/intl/collator/supportedlocalesof/index.html b/files/ru/web/javascript/reference/global_objects/intl/collator/supportedlocalesof/index.html new file mode 100644 index 0000000000..5aca430d38 --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/intl/collator/supportedlocalesof/index.html @@ -0,0 +1,117 @@ +--- +title: Intl.Collator.supportedLocalesOf() +slug: Web/JavaScript/Reference/Global_Objects/Intl/Collator/supportedLocalesOf +tags: + - Collator + - Internationalization + - JavaScript + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Intl/Collator/supportedLocalesOf +--- +
{{JSRef("Global_Objects", "Collator", "Intl,DateTimeFormat,NumberFormat")}}
+ +

Сводка

+

Метод Intl.Collator.supportedLocalesOf() возвращает массив, содержащий те из предоставленных локалей, что поддерживаются при сравнении строк без отката к локали по умолчанию среды выполнения.

+ +

Синтаксис

+
Intl.Collator.supportedLocalesOf(locales[, options])
+ +

Параметры

+
+
locales
+
Строка с языковой меткой BCP 47, либо массив таких строк. Описание общей формы и интерпретации аргумента locales смотрите на {{jsxref("Global_Objects/Intl", "странице, посвящённой объекту Intl", "#Locale_identification_and_negotiation", 1)}}.
+
options
+
+

Необязательный параметр. Объект, который может содержать следующее свойство:

+
+
localeMatcher
+
Используемый алгоритм сопоставления локалей. Возможными значениями являются "lookup" и "best fit"; значением по умолчанию является "best fit". Информацию по этой опции смотрите на {{jsxref("Global_Objects/Intl", "странице, посвящённой объекту Intl", "#Locale_negotiation", 1)}}.
+
+
+
+ +

Описание

+

Возвращает массив с подмножеством языковых меток, предоставленных в аргументе locales. Возвращаются те языковые метки, для которых среда выполнения поддерживает сравнение строк без отката к локали по умолчанию; при поиске используется предоставленный алгоритм сопоставления локалей.

+ +

Примеры

+ +

Пример: использование supportedLocalesOf

+

Предполагая, что среда выполнения поддерживает индонезийское и немецкое, но на балийское сравнение строк, метод supportedLocalesOf вернёт неизменными индонезийскую и немецкую языковые метки, даже несмотря на то, что сортировка pinyin не используется с индонезийским языком и вряд ли будет поддерживаться в немецком языке для Индонезии. Обратите внимание на используемую здесь спецификацию алгоритма "lookup" — сопоставление "best fit" может решить, что индонезийский язык является адекватным сопоставлением с балийским, поскольку большинство людей, говорящих на балийском, также понимают индонезийский, и поэтому может возвратиться ещё и языковая метка балийского языка.

+
var locales = ['ban', 'id-u-co-pinyin', 'de-ID'];
+var options = { localeMatcher: 'lookup' };
+console.log(Intl.Collator.supportedLocalesOf(locales, options).join(', '));
+// → "id-u-co-pinyin, de-ID"
+
+ +

Спецификации

+ + + + + + + + + + + + + +
СпецификацияСтатусКомментарии
{{SpecName('ES Int 1.0', '#sec-10.2.2', 'Intl.Collator.supportedLocalesOf')}}{{Spec2('ES Int 1.0')}}Изначальное определение.
+ +

Совместимость с браузерами

+
{{CompatibilityTable}}
+
+ + + + + + + + + + + + + + + + + + + +
ВозможностьChromeFirefox (Gecko)Internet ExplorerOperaSafari
Базовая поддержка{{CompatChrome("24")}}{{CompatGeckoDesktop("29")}}{{CompatIE("11")}}{{CompatOpera("15")}}{{CompatNo}}
+
+
+ + + + + + + + + + + + + + + + + + + + + +
ВозможностьAndroidChrome для AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Базовая поддержка{{CompatNo}}{{CompatChrome("26")}} + {{CompatNo}}
+ {{bug("864843")}} +
{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Смотрите также

+ -- cgit v1.2.3-54-g00ecf