什么是>>;=用JavaScript是什么意思?
我在dojo.js库中找到了这个:什么是>>;=用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参考或 我知道这在函数式编
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