何时使用>&燃气轮机;在javascript中

何时使用>&燃气轮机;在javascript中,javascript,Javascript,今天我在写70-480篇论文,我遇到了一个问题,这个问题有>我只是想知道它是什么意思。 什么时候使用它,如何使用它这类事情就是 将二进制表示b中的a(>2(基数10):00000000000000000000000010(基数2)=2(基数10) >是 将二进制表示b中的a(>2(基数10):00000000000000000000000010(基数2)=2(基数10) 这是一个有点移位的运算符,我只能说。至于何时使用它,它是指何时需要在位级别修改一个值,例如,假设需要将1更改为4,则可以使用1

今天我在写70-480篇论文,我遇到了一个问题,这个问题有
>
我只是想知道它是什么意思。 什么时候使用它,如何使用它这类事情就是

将二进制表示b中的a(<32)位向右移位,丢弃移位的位

例如:

9>>2(基数10):00000000000000000000000010(基数2)=2(基数10)

>

将二进制表示b中的a(<32)位向右移位,丢弃移位的位

例如:

9>>2(基数10):00000000000000000000000010(基数2)=2(基数10)


这是一个有点移位的运算符,我只能说。至于何时使用它,它是指何时需要在位级别修改一个值,例如,假设需要将1更改为4,则可以使用1我可以说这是一个位移位运算符。至于何时使用它,它是指当您需要在位级别修改一个值时,例如,假设您需要将1更改为4,您可以使用1
>
是一个右位移位。它将值中的所有位向右移动,无论指定多少个位置

让我们看一个例子:

坐9号。在二进制中,这是
1001
。如果我们将9向右移动一个位置,我们将得到
100
(后面的1被移动了),即4

所以
(9>>1)
等于4

如果我们移动两个位置,结果是
10
,即2。所以
(9>>2)
是2

这些运算符通常在创建标志值时使用。假设你正在开发一款电子游戏。角色可以跑、跳和射击。我们可以将这些定义为标志:

不过,使用轮班制更容易,尤其是当您开始使用更高的值时

我们可以使用
|
操作符组合标志。如果我们想指定某人正在跑步和射击,我们将使用
IN_RUN | IN_shot
。这基本上是将两个值相加(从技术上讲,它将两个值组合在一起,如果两个值中的位都是
1
,则将它们设置为
1
。因此
in|u RUN | in|u shot
等于5

然后,您可以使用
&
运算符检查某个值是否具有特定的标志(注意只有一个)。
myValue&IN\u RUN
将返回
IN\u RUN
,如果该标志位于该值中


TL;DR:二进制运算符通常用于在二进制级别上存储单个值中的多个布尔值。

>
是右位移位。它将值中的所有位向右移位,无论指定多少位置

让我们看一个例子:

以数字9为例。在二进制中,这是
1001
。如果我们将9向右移动一个位置,我们将得到
100
(尾随的1被移开),即4

所以
(9>>1)
等于4

如果我们移动两个位置,结果是
10
,也就是2。所以
(9>>2)
就是2

这些运算符通常用于创建标志值。假设您正在开发一个视频游戏。角色可以跑、跳和射击。我们可以将其定义为标志:

不过,使用轮班制更容易,尤其是当您开始使用更高的值时

我们可以使用
|
操作符组合标志。如果我们想指定某人正在跑步和射击,我们将使用
IN|RUN | IN|shot
。这基本上是将值相加(从技术上讲,它在二进制级别上组合值,如果两个值中的位都是
1
,则将位设置为
1
。因此
in|u RUN | in|u shot
等于5

然后,您可以使用
&
运算符检查某个值是否具有特定的标志(注意只有一个)。
myValue&IN\u RUN
将返回
IN\u RUN
,如果该标志位于该值中


TL;DR:二进制运算符通常用于在二进制级别的单个值中存储多个布尔值。

>
是正确的位移位运算符。您可以这样使用它:

var x = 50; // Binary 00110010
var y = x >> 3; // Decimal 6, 00000110

您可以看到x的二进制值右移了3位。您也可以使用
>
是右位移位运算符。您可以这样使用它:

var x = 50; // Binary 00110010
var y = x >> 3; // Decimal 6, 00000110

你可以看到x的二进制值被右移了3位。你也可以使用
发布你是如何使用它的。这是一个很好的例子。如果你正在参加一个认证考试,目的是为了证明你对这个主题的熟悉,你可能想在考试时熟悉一下。像你这样的问题有权威性这里有你的答案。张贴你是如何看待它的使用的。如果你正在参加一个旨在证明你熟悉这个主题的认证考试,你可能想在考试时熟悉一下。像你这样的问题在那里有权威的答案。哈哈,谢谢你指出它!:-)哈哈,谢谢你指出来!:-)
var IN_RUN = 1;
var IN_JUMP = 2;
var IN_SHOOT = 4;
var x = 50; // Binary 00110010
var y = x >> 3; // Decimal 6, 00000110
var MY_BOOLEAN_SETTING = 1 << 0;       // 1, 00000001
var MY_OTHER_BOOLEAN_SETTING = 1 << 1; // 2, 00000010
var MY_THIRD_BOOLEAN_SETTING = 1 << 2; // 4, 00000100
var bitfield = MY_BOOLEAN_SETTING | MY_THIRD_BOOLEAN_SETTING; // 0000 0101
if(bitfield & MY_OTHER_BOOLEAN_SETTING){ //checks if 0010 is in the bitfield (its not)
     //some code
}
if(bitfield & MY_BOOLEAN_SETTING){ //checks if 0001 is in the bitfield (it is)
     //some more code
}