eslint/no-cond-assign 正确性
它的作用
禁止在条件表达式中使用赋值运算符
为什么这是不好的?
在条件语句中,很容易将比较运算符(例如 ==)误写为赋值运算符(例如 =)。
虽然在条件语句中使用赋值运算符有其合理的原因,但很难判断某个特定的赋值是否是故意的。
示例
此规则的 错误 代码示例:
js
// 检查用户的职位标题
if ((user.jobTitle = "manager")) {
// user.jobTitle 现在已错误
}此规则的 正确 代码示例:
js
// 检查用户的职位标题
if (user.jobTitle === "manager") {
// 正确地比较了 `jobTitle`
}配置
此规则接受以下字符串值之一:
"except-parens"
仅当赋值表达式被括号包围时,才允许在条件表达式中使用赋值。
"always"
禁止在条件表达式中使用所有赋值。
如何使用
通过配置文件或 CLI 启用此规则,可以使用:
json
{
"rules": {
"no-cond-assign": "error"
}
}bash
oxlint --deny no-cond-assign