# General Translation Platform: isSameLanguage
URL: https://generaltranslation.com/ru/docs/platform/core/reference/gt-class-methods/locales/is-same-language.mdx
Docs index: https://generaltranslation.com/llms.txt
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]

* Сравнивает только код базового языка (до первого дефиса).
* Игнорирует различия по региону, системе письма и варианту.
* Крайне важно для организации контента по языкам.
* Работает с переменным числом параметров локали.

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
