使用JavaScript我试图随机生成十六进制颜色代码:
var color = '#'+(Math.random()*0xFFFFFF<<0).toString(16);
这几乎可行,但有时候,如果随机生成的数字太低,代码就不会把领先的&#39; 0&#39;或者&#39; 00&#39;在十六进制代码的前面。
有没有一种简单的方法可以解决这个问题?
答案 0 :(得分:1)
var color = (Math.random() * 0xFFFFFF).toString(16);
var hex = "#" + ("000000" + color).substr(-6, 6);
document.write(hex);
答案 1 :(得分:1)
您可以添加'000000'
并从字符串末尾切换六个字符:
var color = '#' + ('000000' + (Math.random() * 0xFFFFFF << 0).toString(16)).slice(-6);