我的JavaScript代码具有if语句,并具有以下条件(恕我直言,非常简单):

if (a !== !!b) {
}


现在,JSHint在标记b前面的第一个感叹号时抱怨如下:


  JSHint:混淆使用'!'。 (W018)


我如何在不更改其语义且不将其拆分为多个指令的情况下,将该行更改为不混乱的(由JSHint定义)?



需要明确的是:a是布尔值,而b可能是布尔值,也可能不是。

最佳答案

是布尔型转换的无处不在的JS习惯用法!!与JSHint混淆了吗?如果是这样:1)也许可以在配置中将其关闭,2)您可以尝试更详细的if (a !== Boolean(b))

关于javascript - 如何使用 !不会混淆?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55513782/

10-15 14:59