32

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

foobarthings[foothing][barthing] = !foobarthings[foothing][barthing];

不用写foobarthings[foothing][barthing]两次。

4

5 回答 5

32

没有比您目前拥有的更短的方法了。

于 2012-12-20T13:08:40.453 回答
12

你可以这样做:

foo ^= 1

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

于 2012-12-20T13:21:24.013 回答
3
var value = true;
alert(value);
value ^= true;
alert(value);​

你可以在这里得到 1 或 0

于 2012-12-20T13:20:44.577 回答
-1

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

return !foo;

真的就是这么简单...

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

于 2017-08-15T14:39:27.697 回答
-3

您可以在执行它或检查条件的地方只使用 foo 和 !foo 。

于 2012-12-20T13:13:15.807 回答