---
url: /docs/guide/usage/linter/rules/eslint/sort-keys.md
---

### 它的作用

在声明多个属性时，将属性名按字母顺序排序，可以更容易地
在之后查找和/或 diff 所需的属性。

### 为什么这不好？

未排序的属性键会让代码更难阅读和维护。

### 示例

以下是此规则的**错误**代码示例：

```js
let myObj = {
  c: 1,
  a: 2,
};
```

以下是此规则的**正确**代码示例：

```js
let myObj = {
  a: 2,
  c: 1,
};
```

## 配置

### 第 1 个选项

type: `"desc" | "asc"`

键的排序顺序。接受 "asc" 表示升序，或 "desc" 表示降序。

### 第 2 个选项

此选项是一个包含以下属性的对象：

#### allowLineSeparatedGroups

type: `boolean`

default: `false`

当为 true 时，由空行分隔的属性组会分别排序。

#### caseSensitive

type: `boolean`

default: `true`

排序比较是否区分大小写（当为 true 时，A < a）。

#### minKeys

type: `integer`

default: `2`

在对象中开始强制排序之前所需的最少属性数量。

#### natural

type: `boolean`

default: `false`

使用自然排序顺序，例如 "a2" 会排在 "a10" 之前。

## 如何使用

## 版本

此规则在 v0.9.4 中添加。

## 参考资料
