# General Translation Platform: getRegionProperties URL: https://generaltranslation.com/ru/docs/platform/core/reference/gt-class-methods/locales/get-region-properties.mdx --- title: getRegionProperties description: Возвращает метаданные региона для локали или кода региона. Справочник API для getRegionProperties. --- Возвращает сведения о коде региона в экземпляре [GT](/docs/platform/core/reference/gt-class/constructor), включая его локализованное название и соответствующий emoji-флаг. General Translation предоставляет удобный способ получать информацию для отображения с учетом региона при создании интернационализированных пользовательских интерфейсов. ## Обзор [#overview] Вызовите `getRegionProperties` для экземпляра [`GT`](/docs/platform/core/reference/gt-class/constructor), при необходимости передав код региона. Если код не указан, используется регион из целевой локали экземпляра. ```typescript const gt = new GT({ sourceLocale: 'en-US', targetLocale: 'fr-FR' }); // Получить свойства региона const usProps = gt.getRegionProperties('US'); console.log(usProps); // { code: 'US', name: 'États-Unis', emoji: '🇺🇸' } const frProps = gt.getRegionProperties('FR'); console.log(frProps); // { code: 'FR', name: 'France', emoji: '🇫🇷' } // Автоопределение из текущей локали const currentRegion = gt.getRegionProperties(); // Использует регион из targetLocale console.log(currentRegion); // { code: 'FR', name: 'France', emoji: '🇫🇷' } ``` Сигнатура: ```typescript getRegionProperties( region?: string, customMapping?: CustomRegionMapping ): { code: string; name: string; emoji: string } ``` *Примечание: `getRegionProperties` выполняется локально с помощью `Intl.DisplayNames` и не требует API-ключа. Если `region` не указан, используется регион из `targetLocale` экземпляра, а название региона локализуется для `targetLocale` этого экземпляра. Для поиска без экземпляра `GT` см. автономный [`getRegionProperties`](/docs/platform/core/reference/utility-functions/locales/get-region-properties).* ## Как это работает [#how-it-works] * **Коды регионов.** Принимает коды регионов ISO 3166-1 alpha-2 или UN M.49 (например, `"US"`, `"FR"`, `"419"`). * **Локализованные названия.** Использует `Intl.DisplayNames`, чтобы локализовать название региона для `targetLocale` экземпляра, с использованием локали библиотеки по умолчанию в качестве резервной. * **Приоритет пользовательского сопоставления.** Если `customMapping` задаёт для региона `name` или `emoji`, они имеют приоритет над значениями по умолчанию. * **Резервные варианты.** Если не удаётся определить отображаемое имя, в качестве `name` используется код региона; если сопоставление emoji не найдено, используется emoji по умолчанию. * **Резервный регион.** Если `region` не указан, используется регион из `targetLocale` экземпляра. * **Отсутствующая локаль.** Выбрасывает `Error`, если для определения свойств региона недоступна целевая локаль. ## Параметры [#parameters] | Параметр | Описание | Тип | Необязательно | По умолчанию | | ---------------------------------- | ------------------------------------------------------------------------------------------ | --------------------- | ------------- | --------------------------------------- | | [`region`](#region) | Код региона по ISO 3166-1 alpha-2 или UN M.49. | `string` | Да | `this.getLocaleProperties().regionCode` | | [`customMapping`](#custom-mapping) | Пользовательское сопоставление регионов для переопределения стандартных названий и эмодзи. | `CustomRegionMapping` | Да | `this.customRegionMapping` | ### `region` [#region] **Тип** `string` · **Необязательно** · **По умолчанию** `this.getLocaleProperties().regionCode` Код региона по ISO 3166-1 alpha-2 или UN M.49. Если не указан, используется регион из целевой локали этого экземпляра. ### `customMapping` [#custom-mapping] **Тип** `CustomRegionMapping` · **Необязательно** · **По умолчанию** `this.customRegionMapping` Необязательное пользовательское сопоставление регионов, которое переопределяет стандартные названия регионов и эмодзи. ## Возвращает [#returns] **Тип** `{ code: string; name: string; emoji: string }` Объект, содержащий: * `code`: код входного региона. * `name`: локализованное (или пользовательское) название региона на языке целевой локали. * `emoji`: соответствующий флаг-эмодзи или символ. ## Примеры [#examples] ```typescript // Базовая информация о регионе const gt = new GT({ sourceLocale: 'en-US', targetLocale: 'en-US' }); // Распространённые коды регионов console.log(gt.getRegionProperties('US')); // { code: 'US', name: 'United States', emoji: '🇺🇸' } console.log(gt.getRegionProperties('GB')); // { code: 'GB', name: 'United Kingdom', emoji: '🇬🇧' } console.log(gt.getRegionProperties('DE')); // { code: 'DE', name: 'Germany', emoji: '🇩🇪' } console.log(gt.getRegionProperties('JP')); // { code: 'JP', name: 'Japan', emoji: '🇯🇵' } ``` ```typescript // Пользовательское сопоставление региона переопределяет значения по умолчанию const gt = new GT({ targetLocale: 'en-US' }); console.log(gt.getRegionProperties('US', { US: { name: 'USA', emoji: '🗽' } })); // { code: 'US', name: 'USA', emoji: '🗽' } ``` ## Примечания [#notes] * Использует API `Intl.DisplayNames` для локализованных названий регионов. * Поддерживает коды регионов как ISO 3166-1 alpha-2, так и UN M.49. * Пользовательские сопоставления переопределяют названия и эмодзи по умолчанию. * Если параметр не указан, автоматически определяет регион по целевой локали. * Если не удаётся получить отображаемое имя, в качестве названия используется код региона.