Intl
O namespace Intl do Azion Runtime: seus construtores para comparação e formatação sensíveis ao idioma, seus métodos estáticos e seu fuso horário padrão.
O objeto Intl é o namespace da ECMAScript Internationalization API. Ele oferece recursos sensíveis ao idioma, como comparação de strings, formatação de números e formatação de datas e horas. Intl contém os construtores desses recursos e as funções que eles compartilham com outros métodos sensíveis ao idioma. Para mais informações, consulte Intl no MDN Web Docs.
Em uma function com deploy feito, Intl.DateTimeFormat().resolvedOptions() informa a localidade en-US e o fuso horário UTC. Uma data que você formata sem a opção timeZone é formatada em UTC.
Construtores
Todos os construtores desta tabela funcionam em uma function com deploy feito:
| Construtor | Descrição |
|---|---|
Intl.Collator() | Cria um collator, um objeto que compara strings pelas regras de um idioma. |
Intl.DateTimeFormat() | Cria um objeto que formata datas e horas pelas regras de um idioma. |
Intl.DisplayNames() | Cria um objeto que traduz de forma consistente os nomes de exibição de idiomas, regiões e scripts. |
Intl.ListFormat() | Cria um objeto que formata listas pelas regras de um idioma. |
Intl.Locale() | Cria um objeto que representa um identificador de localidade Unicode. |
Intl.NumberFormat() | Cria um objeto que formata números pelas regras de um idioma. |
Intl.PluralRules() | Cria um objeto que aplica as regras de plural de um idioma, para uma formatação sensível ao plural. |
Intl.RelativeTimeFormat() | Cria um objeto que formata tempo relativo, como 1 day ago, pelas regras de um idioma. |
Intl.Segmenter() | Cria um objeto que divide um texto em segmentos, como palavras, pelas regras de uma localidade. |
Métodos
Os dois métodos são estáticos: chame-os em Intl.
| Método | Descrição |
|---|---|
Intl.getCanonicalLocales(locales) | Retorna os nomes canônicos das localidades que você passa. Por exemplo, ['EN-us', 'pt-br'] retorna ['en-US', 'pt-BR']. |
Intl.supportedValuesOf(key) | Retorna um array ordenado dos valores únicos que a implementação suporta para key: calendários, collations, moedas, sistemas de numeração, fusos horários ou unidades. |
Exemplo
Este código formata uma data e um número na forma que dois idiomas e regiões esperam e registra cada resultado. Os comentários mostram as linhas que uma function com deploy feito registra:
new Date("2012-05-24") lê uma string só com a data como meia-noite UTC, e o fuso horário após o deploy é UTC, então as duas localidades exibem 24 de maio. Para formatar uma data em outro fuso horário, passe o fuso na opção timeZone. Em uma function com deploy feito, new Date(0).toLocaleString('en-US', { timeZone: 'America/Sao_Paulo' }) retorna 12/31/1969, 9:00:00 PM.