我已经看到了类似于 b = !b 的解释。但我对它的理解还不够好,无法转化为这种用法。
做什么
var a = !1;
做?
a = !1
是一种速记的书写方式a = false
。这通常在尝试压缩(缩小)JavaScript 时使用,因为它节省了三个字节。
如果您在普通的未缩小的 JS 中看到这一点,那么有人可能是懒惰或混淆了。
在 chrome 开发工具中运行它,看看你得到了什么。
a评估为 false 因为 1 是javascript 中的真实值,因此否定它会产生false
也许读这个http://james.padolsey.com/javascript/truthy-falsey/。这很有趣:)
通常,!
它将反转其操作数的布尔值。
if is或if is!a
也会如此。true
a
false
false
a
true
希望有帮助:)
!
是not
运算符。因此! true
等于false
。它的结果将是true
或者false
JavaScript 中的所有值要么是“真”,要么是“假”。这描述了它们在预期boolean
(true
或)的上下文中的解释。false
“真实”值的示例:true、1、[]、{}、“text”
“虚假”值的示例:false、0、“”
!1
是对真值的否定,将评估为假。b = !b
是 a toggler
,它会将值从 a 更改truthy
为 a falsy
,反之亦然。