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) {
}