Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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 - Fatal编程技术网

什么是>>;=用JavaScript是什么意思?

什么是>>;=用JavaScript是什么意思?,javascript,Javascript,我在dojo.js库中找到了这个: 13444: color >>= bits; 背景: ArrayUtil.forEach(["b", "g", "r"], function(x){ var c = color & mask; color >>= bits; t[x] = bits == 4 ? 17 * c : c; }); 我在别的地方找不到它的任何参考资料。它不在O'Reilly JavaScript pocket参考或 我知道这在函数式编

我在dojo.js库中找到了这个:

13444: color >>= bits;
背景:

ArrayUtil.forEach(["b", "g", "r"], function(x){
  var c = color & mask;
  color >>= bits;
  t[x] = bits == 4 ? 17 * c : c;
});
我在别的地方找不到它的任何参考资料。它不在O'Reilly JavaScript pocket参考或


我知道这在函数式编程中意味着什么,但我很确定JavaScript不支持monad

它是相同的a
color=color>>位
-类似于+=、-=、*=

编辑

>
(在整数上下文中)将位向右移位,即除以2,但将符号位保持在同一位置

这是右移位运算符。例如,
a>>b
操作符实际上与a/2b相同

在您的情况下,它等于:
color=color>>位
,其中
color>>位
代表color/2位

如您所见,它将第一个操作数与第二个操作数的
2
提升幂相除,例如2位;无论
位的值是多少


你可以在网站上阅读更多关于它的信息

x = x >> y
以下是您需要的参考资料: mozilla的博士


还有“

我相信这是一个位移位赋值运算符,这里有一些简短的信息,这些是位运算符。“>>”实际上将位(二进制)向右移位。 因此,如果您有“1010”,那么应用“>>”操作符将返回“0101”


将颜色中的位右移“位”二进制数字。

确定。这是标准语法吗?正如我所说,我在其他任何地方都找不到对它的引用。@NickBrunt,参见第7.7节和第11.7节不,我知道>>的作用,我只是被=部分弄糊涂了,因为我不知道JavaScript支持轮班速记赋值运算符。MDN是一个很好的文档资源。请参见上的页面。
x = x >> y