Eslint
规则 | Rules

no-const-assign

不允许修改使用const声明的变量(no-const-assign)

配置文件中的"extends": "eslint:recommended"属性启用此规则。

我们不能修改使用const关键字声明的变量。它会引发运行时错误。

在非 ES2015环境下,它可能仅仅被忽略。

规则细节

此规则旨在标记修改使用const关键字声明的变量。

此规则的错误代码示例:

/*eslint no-const-assign: "error"*/ /*eslint-env es6*/ const a = 0; a = 1;

/*eslint no-const-assign: "error"*/ /*eslint-env es6*/ const a = 0; a += 1;

/*eslint no-const-assign: "error"*/ /*eslint-env es6*/ const a = 0; ++a;

此规则的正确代码示例:

/*eslint no-const-assign: "error"*/ /*eslint-env es6*/ const a = 0; console.log(a

/*eslint no-const-assign: "error"*/ /*eslint-env es6*/ for (const a in [1, 2, 3]) { // `a` is re-defined (not modified) on each loop step. console.log(a }

/*eslint no-const-assign: "error"*/ /*eslint-env es6*/ for (const a of [1, 2, 3]) { // `a` is re-defined (not modified) on each loop step. console.log(a }

何时不使用它

如果您不希望收到有关修改使用const关键字声明的变量的通知,则可以安全地禁用此规则。

版本

该规则在 ESLint 1.0.0-rc-1中引入。

资源