# General Translation Platform: isSameLanguage URL: https://generaltranslation.com/ru/docs/platform/core/reference/gt-class-methods/locales/is-same-language.mdx --- title: isSameLanguage description: Проверяет, имеют ли две локали один и тот же базовый язык. Справка по API для isSameLanguage. --- Проверяет, обозначают ли несколько кодов локали BCP-47 один и тот же базовый язык, игнорируя различия по региону и системе письма, для экземпляра [GT](/docs/platform/core/reference/gt-class/constructor). General Translation использует это, чтобы определять языковую совместимость и группировать содержимое по языковым семействам. ## Обзор [#overview] Вызовите `isSameLanguage` для экземпляра [`GT`](/docs/platform/core/reference/gt-class/constructor), передав два или более кода локали (или массивы кодов). Метод возвращает `true`, если у всех них один и тот же базовый язык. ```typescript const gt = new GT({ sourceLocale: 'en-US', targetLocale: 'es-ES' }); console.log(gt.isSameLanguage('en-US', 'en-GB')); // true console.log(gt.isSameLanguage('en-US', 'es-ES')); // false ``` Сигнатура: ```typescript isSameLanguage(...locales: (string | string[])[]): boolean ``` *Примечание: `isSameLanguage` работает локально и не требует API-ключа. Для сравнений без экземпляра `GT` см. отдельную функцию [`isSameLanguage`](/docs/platform/core/reference/utility-functions/locales/is-same-language).* ## Как это работает [#how-it-works] * **Сравнение базового языка.** Сравнивается только код базового языка (до первого дефиса). * **Игнорирование подтегов.** Региональные различия, различия в системе письма и вариантах игнорируются. * **Вариативный ввод.** Поддерживает переменное количество параметров локали: строки, массивы или их сочетание. ## Параметры [#parameters] | Параметр | Описание | Тип | Необязательный | По умолчанию | | --------------------- | ------------------------------------------------------------------------ | ------------------------ | -------------- | ------------ | | [`locales`](#locales) | Переменное число кодов локалей или массивов кодов локалей для сравнения. | `(string \| string[])[]` | Нет | — | ### `...locales` [#locales] **Тип** `(string | string[])[]` · **Обязательно** Переменное число кодов локалей (`string`) или массивов кодов локалей для сравнения. Все переданные локали должны относиться к одному и тому же базовому языку. ## Возвращает [#returns] **Тип** `boolean` `true`, если все коды локалей относятся к одному и тому же базовому языку, иначе `false`. ## Примеры [#examples] ```typescript const gt = new GT({ sourceLocale: 'en-US', targetLocale: 'es-ES' }); // Один язык, разные регионы console.log(gt.isSameLanguage('en-US', 'en-GB')); // true console.log(gt.isSameLanguage('es-ES', 'es-MX')); // true console.log(gt.isSameLanguage('zh-CN', 'zh-TW')); // true // Разные языки console.log(gt.isSameLanguage('en-US', 'es-ES')); // false console.log(gt.isSameLanguage('fr-FR', 'de-DE')); // false // Базовый язык с вариантами console.log(gt.isSameLanguage('en', 'en-US', 'en-GB')); // true ``` ## Примечания [#notes] * Сравнивает только код базового языка (до первого дефиса). * Игнорирует различия по региону, системе письма и варианту. * Крайне важно для организации контента по языкам. * Работает с переменным числом параметров локали.