Javascript获取随机颜⾊的⼏种⽅式
先认识⼀下颜⾊值的表达⽅式
#FFFFFF,由6位16进制数组成。
#FFFFFFFF,由8位16进制数组成,前6位表⽰颜⾊,后两位数表⽰透明度,数值越⼤,透明度越⼩。
rgb(255,255,255),由3位0-255之间的数字组成。
rgba(255,255,255,.5),最后⼀位0-1之间的⼩数,表⽰透明度,数值越⼤,透明度越⼩。
随机⽣成格式为#FFFFFF的颜⾊值
随机⽣成6位0-15之间的数字,再⽤toString(16)将数字转成16进制。
//随机⽣成6位16进制数的颜⾊值 #FFFFFF
function randomColor() {
var color = "#";
/
/for循环中,如果后⾯仅有⼀条语句,{}可省略不写
//随机⽣成6位0-15之间的数字,再⽤toString(16)将数字转成16进制
for (var i = 0; i < 6; i++) color+=parseInt(Math.random() * 16).toString(16);
return color;
}
12345678
随机⽣成带透明度的16进制的颜⾊值
跟第⼀种⽅法类似,随机⽣成8位0-15之间的数字,再⽤toString(16)将数字转成16进制。
//#ff0000ff 后两位是透明度,数值越⼤,颜⾊越深
function randomColor() {
var color = "#";
/
/for循环中,如果后⾯仅有⼀条语句,{}可省略不写
//同上⾯⽅法
for (var i = 0; i < 8; i++) color+=parseInt(Math.random() * 16).toString(16);
return color;
}
12345678
获取⽣成RGB格式的随机颜⾊值
随机⽣成3位0-255之间的数字,字符串进⾏拼接。
//获取随机颜⾊ rgb(255,255,255)
function randomColor(){
var color="rgb(";
for(var i=0;i<3;i++) color+=parseInt(Math.random()*256)+",";
//去除最后⼀个逗号
// color=color.slice(0,-1)
color=color.substring(0,color.length-1)+")";
字符串是什么颜
return color;
}
123456789
获取⽣成RGBA格式的随机颜⾊值
随机⽣成3位0-255之间的数字,如果有传⼊透明度的值,将按照⽤户传⼊的值来渲染。如果没有传⼊透明度的值,则随机⽣成透明度。
需要注意的是Math.random()只能⽣成0-1之间的⼩数,不包含0跟1,Math.random()*10,是1-10之间的整数,除以10再四舍五⼊,就有可能得到0或者1。
function randomColor(alpha){
//判断有没有传⼊透明值,没有传⼊的话,随机⽣成0-1之间的⼩数
//Math.random()只能⽣成0-1之间的⼩数,不包含0跟1,Math.random()*10,是1-10之间的整数,除以10再四舍五⼊,就有可能得到0或者1.
alpha = alpha==undefined? (Math.random()*10/10).toFixed(1) : alpha;
//将参数转化成数值
alpha=Number(alpha);
//如果传⼊的参数是⾮数值,则让透明度为1
if(isNaN(alpha)) alpha=1;
//颜⾊拼接
var color = "rgba(";
for(var i=0;i<3;i++){
color+=parseInt(Math.random()*256)+",";
}
color+= alpha+")";
return color;
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。