Intl.Collator
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2017.
O objeto Intl.Collator
permite uma comparação de strings sensível à linguagem.
Experimente
Construtor
Intl.Collator()
-
Cria um novo objeto
Collator
.
Métodos estáticos
Intl.Collator.supportedLocalesOf()
-
Retorna um array contendo as localizações (
locales
) providas que são suportados sem a necessidade de depender da localização padrão do runtime.
Métodos de instância
Intl.Collator.prototype.compare
-
Função Getter que compara duas strings conforme a ordenação deste objeto
Intl.Collator
. Intl.Collator.prototype.resolvedOptions()
-
Retorna um novo objeto com as propriedades que refletem as opções de localização (
locale
) e agrupamento (collation
) computadas durante a inicialização do objeto.
Exemplos
Usando Collator
O exemplo a seguir demonstra os diferentes potenciais resultados para uma string que aparece antes, depois, ou no mesmo nível que outra:
console.log(new Intl.Collator().compare("a", "c")); // -1, ou algum outro valor negativo
console.log(new Intl.Collator().compare("c", "a")); // 1, ou algum outro valor positivo
console.log(new Intl.Collator().compare("a", "a")); // 0
É importante notar que os resultados mostrados no código acima podem variar entre navegadores e versões de navegadores. Isso por os valores serem específicos a implementação. Isso ocorre, pois a implementação define somente que os valores para antes e depois sejam negativo e positivo.
Usando localizações
Os resultados retornados por Intl.Collator.prototype.compare()
variam entre linguagens. Para obter a sequência de ordenação da linguagem usada na interface da sua aplicação, garanta a especificação desta linguagem (e possivelmente algumas linguagens reserva) usando o argumento locales
:
// Em alemão, ä está no mesmo nível de a
console.log(new Intl.Collator("de").compare("ä", "z"));
// -1, ou algum outro valor negativo
// Em Sueco, ä vem depois de z
console.log(new Intl.Collator("sv").compare("ä", "z"));
// 1, ou algum outro valor positivo
Usando opções
Os resultados retornados por Intl.Collator.prototype.compare()
podem ser customizados usando o argumento options
:
// Em Alemão, ä tem a como sua letra base
console.log(new Intl.Collator("de", { sensitivity: "base" }).compare("ä", "a"));
// 0
// Em Sueco, ä e a são letras base separadas
console.log(new Intl.Collator("sv", { sensitivity: "base" }).compare("ä", "a"));
// 1, ou algum outro valor positivo
Especificações
Specification |
---|
ECMAScript Internationalization API Specification # collator-objects |
Compatibilidade com navegadores
BCD tables only load in the browser