跳至內容

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 許可證發布。