determineLocale
Справочник API по методу GT determineLocale
Обзор
Метод determineLocale определяет наиболее подходящую локаль из списка разрешённых локалей с учётом предпочтений пользователя.
Он реализует согласование локалей, чтобы найти оптимальный вариант, когда точного совпадения нет.
const gt = new GT({
sourceLocale: 'en-US',
locales: ['en-US', 'es-ES', 'fr-FR', 'de-DE']
});
// Точное совпадение
console.log(gt.determineLocale('en-US')); // 'en-US'
// Языковой фолбэк
console.log(gt.determineLocale('en-GB')); // 'en-US' (ближайший вариант английского)
// Несколько предпочтений
console.log(gt.determineLocale(['fr-CA', 'es-MX', 'en-US'])); // 'es-ES' (ближайший вариант испанского)
// Нет соответствия
console.log(gt.determineLocale('it-IT')); // undefinedСправочные материалы
Параметры
Prop
Type
Возвращает
string | undefined — наилучшее соответствие локали или undefined, если совпадение не найдено
Примеры
Согласование локали пользователя
const gt = new GT({
sourceLocale: 'en-US',
locales: ['en-US', 'en-GB', 'es-ES', 'fr-FR']
});
// Имитация заголовка браузера Accept-Language
const userPreferences = ['fr-CA', 'en-GB', 'en'];
const bestMatch = gt.determineLocale(userPreferences);
console.log(bestMatch); // «fr-FR» согласно порядку предпочтенийПримечания
- Возвращает первое точное совпадение из списка разрешённых локалей
- Переходит к совпадению по языку, если точный регион недоступен
- Учитывает порядок предпочтений во входном массиве
- Возвращает undefined, если подходящее совпадение не найдено
- Важно для реализации согласования локали в веб‑приложениях
Дальнейшие шаги
- Проверьте, требуется ли перевод, с помощью
requires-translation - Сравните языки с помощью
is-same-language
Насколько полезно это руководство?