# generaltranslation: General Translation Core SDK: getLocaleDirection URL: https://generaltranslation.com/ru/docs/core/functions/locales/get-locale-direction.mdx --- title: getLocaleDirection description: Справочная документация по API функции getLocaleDirection --- ## Обзор Функция `getLocaleDirection` определяет направление текста (слева направо или справа налево) для локали без необходимости создавать экземпляр класса GT. Она использует API `Intl.Locale`, чтобы точно определять направление для любого допустимого кода локали BCP-47. Эта функция чаще всего используется для установки атрибута `dir` HTML-элемента на основе локали. ```typescript import { getLocaleDirection } from 'generaltranslation'; const direction = getLocaleDirection('ar-SA'); console.log(direction); // "rtl" const englishDirection = getLocaleDirection('en-US'); console.log(englishDirection); // "ltr" ``` *** ## Справка ### Параметры ### Описание параметров | Параметр | Описание | | -------- | ------------------------------------------------------------- | | `locale` | Код локали BCP-47, для которой проверяется направление текста | ### Возвращает `'ltr' | 'rtl'` — направление текста для локали: * `'ltr'`: слева направо (большинство языков, включая английский, испанский, французский, немецкий, китайский, японский и т. д.) * `'rtl'`: справа налево (арабский, иврит, персидский, урду и другие семитские и ближневосточные языки) *** ## Принцип работы ### Алгоритм определения направления Функция использует свойство `textInfo.direction` API `Intl.Locale`: 1. Создаёт объект `Intl.Locale` для указанной локали 2. Обращается к свойству `textInfo.direction`, чтобы определить направление письма для конкретного языка 3. Возвращает `'rtl'` для языков с письмом справа налево и `'ltr'` для всех остальных 4. По умолчанию возвращает `'ltr'`, если локаль недопустима или вызывает ошибку ### Распознавание RTL-языков Автоматически определяет языки с письмом справа налево, включая: * **Арабский** (`ar`, `ar-SA`, `ar-EG`, `ar-AE` и т. д.) * **Иврит** (`he`, `he-IL`) * **Персидский/фарси** (`fa`, `fa-IR`) * **Урду** (`ur`, `ur-PK`, `ur-IN`) * **Пушту** (`ps`) * **Синдхи** (`sd`) * **Курдский (сорани)** (`ckb`) * И другие письменности с направлением справа налево ### Обработка ошибок * Недопустимые или некорректно сформированные коды локали по умолчанию интерпретируются как `'ltr'` * При недопустимом вводе исключения не выбрасываются * Надежное резервное поведение в граничных случаях *** ## Примеры ### Базовое определение направления ```typescript import { getLocaleDirection } from 'generaltranslation'; // Языки с письмом слева направо console.log(getLocaleDirection('en-US')); // "ltr" console.log(getLocaleDirection('es-ES')); // "ltr" console.log(getLocaleDirection('fr-FR')); // "ltr" console.log(getLocaleDirection('ja-JP')); // "ltr" console.log(getLocaleDirection('zh-CN')); // "ltr" // Языки с письмом справа налево console.log(getLocaleDirection('ar-SA')); // "rtl" console.log(getLocaleDirection('he-IL')); // "rtl" console.log(getLocaleDirection('fa-IR')); // "rtl" console.log(getLocaleDirection('ur-PK')); // "rtl" ``` *** ## Примечания * Возвращает `'ltr'` для всех языков с письмом слева направо (это большинство языков мира) * Возвращает `'rtl'` для языков с письмом справа налево (арабский, иврит, персидский и т. д.) * Использует современный API `Intl.Locale` для точного определения * Работает со всеми кодами локалей BCP-47 ## Что дальше * Используйте метод класса GT [`getLocaleDirection`](/docs/core/class/methods/locales/get-locale-direction) * Получите свойства локали с помощью [`getLocaleProperties`](/docs/core/functions/locales/get-locale-properties) * Проверяйте локали с помощью [`isValidLocale`](/docs/core/functions/locales/is-valid-locale) * Получите эмодзи локали с помощью [`getLocaleEmoji`](/docs/core/functions/locales/get-locale-emoji)