我在JavaScript中搜索了一个用于创建随机十六进制颜色的方法。
我发现的是:'#'+(Math.random()*0xFFFFFF<<0).toString(16);
我发现了here。
我不喜欢复制我不理解的代码。我想除了一个小细节外,我得到了一切。这部分就在这里:<<0
。通过将二进制代码向左移动“0”,可以在该点之后剪切所有数字。但为什么会削减数字呢?如果我使用二进制计算器并输入类似13和13.2的东西,它会给我相同的结果。那么用0来移动整个事物会减少点数呢?
我创造了一个小提琴来展示我的意思:
https://fiddle.jshell.net/ucjb3quL/
我希望你能帮助我