Javascript 翻转布尔变量的缩写

Javascript 翻转布尔变量的缩写,javascript,boolean,flip,shorthand,Javascript,Boolean,Flip,Shorthand,如何在javascript中翻转布尔变量的值,而不必包含两次变量名? 所以 不必写两次foobarthings[foothing][barthing]。没有比你现在拥有的更短的方法了。你只需要foo和!foo在执行它或检查条件的地方 var value = true; alert(value); value ^= true; alert(value);​ 您可以在此处获得1或0您可以执行以下操作: foo ^= 1 但这确实会在0和1之间切换foo,而不是true和false。要在JS中翻转

如何在javascript中翻转布尔变量的值,而不必包含两次变量名? 所以


不必写两次
foobarthings[foothing][barthing]

没有比你现在拥有的更短的方法了。

你只需要foo和!foo在执行它或检查条件的地方

var value = true;
alert(value);
value ^= true;
alert(value);​
您可以在此处获得1或0

您可以执行以下操作:

foo ^= 1

但这确实会在0和1之间切换foo,而不是true和false。

要在JS中翻转布尔变量的值,需要如下语法:

return !foo;
真的很简单


或者你可以做
(foo^=1)==true
(必须是==not==)

,这实际上相当聪明。考虑到foo++的存在,从来没有想到过这种奇怪的事情。难道没有
foo
还是什么?不,我需要在其中存储相反的值。这可以被认为是速记吗?这不完全正确,有这样一个操作符:
ver inverse=return!傅完全正确valid@JacobSchneider您发布的代码在语法上无效,OP已经演示了对
的了解运算符。但您可以执行
(foo^=1)==true
(必须是
=
而不是
==
)问题是在执行赋值和翻转布尔状态时避免重复名称。我只使用变量的名称一次用户希望将翻转后的值分配回相同的变量名称,这个答案没有涵盖。
return !foo;