JavaScript 逻辑非运算符(!)
示例
逻辑NOT(!)运算符对表达式执行逻辑取反。
语法:
!expression
返回值:
一个Boolean。
描述
逻辑NOT(!)运算符对表达式执行逻辑取反。
布尔值只需取反即可:!true===false和!false===true。
非布尔值首先转换为布尔值,然后取反。
这意味着可以使用双逻辑NOT(!!)将任何值强制转换为布尔值:
!!"FooBar" === true !!1 === true !!0 === false
这些都等于!true:
!'true' === !new Boolean('true');
!'false' === !new Boolean('false');
!'FooBar' === !new Boolean('FooBar');
![] === !new Boolean([]);
!{} === !new Boolean({});这些都等于!false:
!0 === !new Boolean(0);
!'' === !new Boolean('');
!NaN === !new Boolean(NaN);
!null === !new Boolean(null);
!undefined === !new Boolean(undefined);例子:
!true //假
!-1 //假
!"-1" //假
!42 //假
!"42" //假
!"foo" //假
!"true" //假
!"false" //假
!{} //假
![] //假
!function(){} //假
!false //真正
!null //真正
!undefined //真正
!NaN //真正
!0 //真正
!"" //真正