Skip to content
← Back to rules

unicorn/no-immediate-mutation 严格

An auto-fix is available for this rule.

它做了什么

禁止在变量初始化后立即进行修改。

为什么这是不好的?

当你初始化一个变量并立即对其进行修改时,更清晰的做法是将修改操作包含在初始化过程中。这样可以使代码更具可读性,并减少语句数量。

示例

此规则的错误代码示例:

js
const array = [1, 2];
array.push(3);

const object = { foo: 1 };
object.bar = 2;

const set = new Set([1, 2]);
set.add(3);

const map = new Map([["foo", 1]]);
map.set("bar", 2);

此规则的正确代码示例:

js
const array = [1, 2, 3];

const object = { foo: 1, bar: 2 };

const set = new Set([1, 2, 3]);

const map = new Map([
  ["foo", 1],
  ["bar", 2],
]);

如何使用

要通过配置文件或 CLI 启用此规则,可以使用:

json
{
  "rules": {
    "unicorn/no-immediate-mutation": "error"
  }
}
bash
oxlint --deny unicorn/no-immediate-mutation

参考资料