JS:生成随机颜色案例

需求:

该函数接收一个布尔类型参数,比奥是颜色的格式是十六进制还是rgb格式

1:如果参数传递的是true或者无参数,则输出一个随机十六进制的颜色

2:如果参数传递的是false,则输出一个随机rgb的颜色

3:格式:

function getRandomColor(flag){

}

console.log(getRandomColor(true))

console.log(getRandomColor(false))

思路:

提示:16进制颜色格式为:’#fffff'其中f可以是0-f间的任意字符

可以利用数组:  let arr=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f']

提示:rgb颜色格式为:‘rgb(255,255,255)'其中255可以是任意0-255间的数字

直接生成三个0-255的随机数

完整代码:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>

    function getRandomColor(flag) {
      if (flag) {//flag===false 为rgb表示形式:rgb()
        let x1 = Math.floor(Math.random() * 256)
        let x2 = Math.floor(Math.random() * 256)
        let x3 = Math.floor(Math.random() * 256)
        return `rgb(${x1},${x2},${x3})`
        // return rgb(x1, x2, x3)

      }
      //true/无参数为十六进制
      else {
        let arr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f']
        let str = '#'//使用str数组将颜色字符拼接起来
        for (let i = 0; i < 6; i++) {
          let random = Math.floor(Math.random() * arr.length)
          str += arr[random]//通过随机下标获取数组元素
        }
        return str
      }

    }
    let n = prompt('请输入表示格式:')

    console.log(getRandomColor(n))
  </script>
</body>

</html>

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值