跳至内容

eslint/no-extra-boolean-cast 正确性

此规则默认处于启用状态。
🚧 自动修复尚在开发中。

其功能

此规则禁止不必要的布尔值强制转换。

这样做有什么坏处?

在诸如 if 语句的测试等情况下,表达式的结果将强制转换为布尔值,通过双重否定 (!!) 或布尔值调用进行布尔值强制转换是没有必要的。

示例

javascript
var foo = !!!bar;
var foo = Boolean(!!bar);

if (!!foo) {
}
if (Boolean(foo)) {
}

// with "enforceForLogicalOperands" option enabled
if (!!foo || bar) {
}

参考

根据 MIT 许可证发布。