我遇到过像这样的javascript代码部分:
if(!!something){
...
}
我想,这个操作符应该解决一些问题,但我无法理解。
修改
使用“double not”是否会在if
运算符中提供任何好处?
我可以使用此代码代替上面的代码:
if(something){
...
}
答案 0 :(得分:1)
!! x相当于Boolean(x)。即它有效地将变量强制转换为布尔值。
答案 1 :(得分:1)
!!
将任何值转换为其布尔表示。一个简单的例子:
function hasItems(arr) {
return !!arr.length;
}
如果你没有强制转换布尔值,那么它将在空时返回false,并在有项时返回数字。