---
createdAt: 2024-08-11
updatedAt: 2025-06-29
title: getLocaleLang 函数文档 | intlayer
description: 查看如何使用 intlayer 包中的 getLocaleLang 函数
keywords:
  - getLocaleLang
  - 翻译
  - Intlayer
  - intlayer
  - 国际化
  - 文档
  - Next.js
  - JavaScript
  - React
slugs:
  - doc
  - packages
  - intlayer
  - getLocaleLang
history:
  - version: 5.5.10
    date: 2025-06-29
    changes: 初始化历史
---

# 文档：`intlayer` 中的 `getLocaleLang` 函数

## 描述

`getLocaleLang` 函数从区域设置字符串中提取语言代码。它支持带有或不带国家代码的区域设置。如果未提供区域设置，则默认返回空字符串。

## 参数

- `locale?: Locales`

  - **描述**：要从中提取语言代码的区域设置字符串（例如，`Locales.ENGLISH_UNITED_STATES`，`Locales.FRENCH_CANADA`）。
  - **类型**：`Locales`（可选）

## 返回值

- **类型**：`string`
- **描述**：从区域设置中提取的语言代码。如果未提供区域设置，则返回空字符串（`''`）。

## 示例用法

### 提取语言代码：

```typescript codeFormat="typescript"
import { getLocaleLang, Locales } from "intlayer";

getLocaleLang(Locales.ENGLISH_UNITED_STATES); // 输出: "en"
getLocaleLang(Locales.ENGLISH); // 输出: "en"
getLocaleLang(Locales.FRENCH_CANADA); // 输出: "fr"
getLocaleLang(Locales.FRENCH); // 输出: "fr"
```

```javascript codeFormat="esm"
import { getLocaleLang } from "intlayer";

getLocaleLang(Locales.ENGLISH_UNITED_STATES); // 输出: "en"
getLocaleLang(Locales.ENGLISH); // 输出: "en"
getLocaleLang(Locales.FRENCH_CANADA); // 输出: "fr"
getLocaleLang(Locales.FRENCH); // 输出: "fr"
```

```javascript codeFormat="commonjs"
const { getLocaleLang } = require("intlayer");

getLocaleLang(Locales.ENGLISH_UNITED_STATES); // 输出: "en"
getLocaleLang(Locales.ENGLISH); // 输出: "en"
getLocaleLang(Locales.FRENCH_CANADA); // 输出: "fr"
getLocaleLang(Locales.FRENCH); // 输出: "fr"
```

## 边界情况

- **未提供区域设置：**

- 当 `locale` 为 `undefined` 时，函数返回空字符串。

- **格式错误的区域设置字符串：**
  - 如果 `locale` 不符合 `language-country` 格式（例如，`Locales.ENGLISH-US`），函数会安全地返回 `'-'` 之前的部分，或者如果没有 `'-'`，则返回整个字符串。
