function F() {
w = !0;
return !1
}
这是设置布尔变量的特殊方法吗?作者为什么这样做?
编辑:上下文:
document.onmousedown = F;
function F() {
w = !0;
return !1
}
这是设置布尔变量的特殊方法吗?作者为什么这样做?
编辑:上下文:
document.onmousedown = F;
这是不必要的能力的一个例子。下面的代码完全相同:
function F() {
w = true; //w = !0;
return false //return !1
}
如果您在生产中使用了一个好的缩小工具,那么节省几个字节的聪明编程就变得不必要了。
w
是来自外部范围的变量。!0
is true
but 只占用 2 个字节,所以我的猜测是作者想w
在回调函数中设置为 true 并想保存字节。
感叹号是一个逻辑非运算符,它将这些值转换为布尔值并确保布尔类型
所以 w 被赋值为 true
你的回报是假的
在 Javascript 中,0 是一个假值,任何非零值都是真。!
是逻辑“非”,“!0
非假”或“真”也是如此,而!1
“非真”或“假”也是如此。
至于作者为什么这样做 - 我不知道。
!是否定运算符。!0 为真。!1 是错误的。
是的,这是一种设置布尔值的方法。在这种情况下,函数将返回false
,因为1
可以计算为true
,因此它的否定 ( !
) 将计算为false
。
!
意思是“不”。
你展示的例子没有多大意义,通常你会使用它的地方是这样的:
var visible = false;
$('#link').click(function () {
visible = !visible;
});
在上面的这种情况下,每次点击都会“切换”变量visible
。