Javascript 随机颜色使用说明 函数rndm_color(){ 变量字母='0123456789ABCDEF'; var color='#'; 对于(变量i=0;i

Javascript 随机颜色使用说明 函数rndm_color(){ 变量字母='0123456789ABCDEF'; var color='#'; 对于(变量i=0;i,javascript,Javascript,这是我的课。当我用7或更高的数字更改I

这是我的课。当我用7或更高的数字更改I<6中的6时,代码不起作用。为什么?数字6是什么意思?

您的函数正在生成一个十六进制颜色,它被定义为一个
#
后跟6个十六进制值(0-9,a-F)。第七个十六进制将产生无效的颜色值

六位数字表示RGB颜色(2个红色、2个绿色、2个蓝色)。RGB的最大值为255(十六进制ff)。这就是为什么颜色的最大值是#ffffff(100%红、100%绿、100%蓝)

快速回答是颜色是RGB(红、绿、蓝)的十六进制表示形式

该函数还应使用8个字符,因为8个字符定义了RGBA(红色、绿色、蓝色、Alpha(透明度))-


在您的代码中,颜色是以六位数的十六进制值生成的,如(#00ffff,#123456),如果将I更改为7,则会出错,因为七位数的十六进制代码无效(#1234567)将不会输出任何内容。这里的数字6意味着得到随机数6的时间,并把它

您可以尝试以下方法来测试:

function rndm_colour(){
    var letters = '0123456789ABCDEF';
    var color = '#';
    for (var i = 0; i < 6; i++) {
        color += letters[Math.floor(Math.random() * 16)];
    }
    return color
}
//它将输出一种颜色,因为它是6位数字
//它将不输出颜色,因为它是7位数字

如果您对以下其中一个答案感到满意,您可以“接受”其中一个答案。要执行此操作,请单击该答案旁边的勾选/复选标记,使其改变颜色(变为绿色)。这不是强制性的,但这是一个很好的方式来感谢那些帮助过你的人。
<input type="color" value="#123456">// it will output a color because it is 6 digit

<input type="color" value="#1234567">// it will output not output a color because it is 7 digit