Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用于反转布尔值的速记赋值运算符_Javascript_Assignment Operator_Shorthand - Fatal编程技术网

Javascript 用于反转布尔值的速记赋值运算符

Javascript 用于反转布尔值的速记赋值运算符,javascript,assignment-operator,shorthand,Javascript,Assignment Operator,Shorthand,基本算术运算符有速记运算符,例如: x = x+2; x += 2; 或 然而,我想知道是否有这样的运算符可以简单地反转布尔值 例如,假设z=true,是否有更短的等价物: z = !z; 我知道这不可能只是!z,因为这样它只会返回与z相反的值,但不会更改其值 我知道我有点懒,但我在代码中经常使用它,并尽可能地优化它。我会尽量避免重复变量名,以保持它更干净、更优雅 另外,我正在用JavaScript编写代码。就我个人而言,我会用你的方式否定这件事。但是,如果这对您来说真的很重要,并且您可以放

基本算术运算符有速记运算符,例如:

x = x+2;
x += 2;

然而,我想知道是否有这样的运算符可以简单地反转布尔值

例如,假设
z=true
,是否有更短的等价物:

z = !z;
我知道这不可能只是
!z
,因为这样它只会返回与z相反的值,但不会更改其值

我知道我有点懒,但我在代码中经常使用它,并尽可能地优化它。我会尽量避免重复变量名,以保持它更干净、更优雅


另外,我正在用JavaScript编写代码。

就我个人而言,我会用你的方式否定这件事。但是,如果这对您来说真的很重要,并且您可以放弃
boolean
类型,只需使用数字内部表示(true==1,false==0)和按位运算符对其求反即可:

z = true;  // z is type boolean
z ^= 1;    // z is now false, but its type is number
           // (z == false) evaluates to true and you can still do things like if (z)...
z ^= 1;    // z is now true again

就我个人而言,我会像你那样否定这件事。但是,如果这对您来说真的很重要,并且您可以放弃
boolean
类型,只需使用数字内部表示(true==1,false==0)和按位运算符对其求反即可:

z = true;  // z is type boolean
z ^= 1;    // z is now false, but its type is number
           // (z == false) evaluates to true and you can still do things like if (z)...
z ^= 1;    // z is now true again

z=!z
是与
y*=2
相同的字符数。你希望短多少?来吧,伙计。。。2个额外的角色是不是太麻烦了?如果键盘快捷键太多,请创建快捷键work@charlietfl更长的变量名=P。。。但我只是想知道是否有任何捷径。我喜欢简洁。那么在mdn文档中查找“javascript运算符”并亲自查看有多难我个人最喜欢的布尔值反转方法是
z=!!!!!!!!!!!!!!!!!z
z=!z
是与
y*=2
相同的字符数。你希望短多少?来吧,伙计。。。2个额外的角色是不是太麻烦了?如果键盘快捷键太多,请创建快捷键work@charlietfl更长的变量名=P。。。但我只是想知道是否有任何捷径。我喜欢简洁。那么在mdn文档中查找“javascript运算符”并亲自查看有多难我个人最喜欢的布尔值反转方法是
z=!!!!!!!!!!!!!!!!!z有趣的解决方案。我没有想到bitewise运算符。有趣的解决方案。我没有想到bitewise操作符。