上海古都建筑设计集团,上海办公室装修设计公司,上海装修公司高质量的内容分享社区,上海装修公司我们不是内容生产者,我们只是上海办公室装修设计公司内容的搬运工平台

JavaScript基础五对象 内置对象 Math.random()

guduadmin231月前

内置对象-生成任意范围随机数

Math.random() 随机数函数, 返回一个0 - 1之间,并且包括0不包括1的随机小数 [0, 1)

  • 如何生成0-10的随机数呢?

    Math.floor(Math.random() * (10 + 1)) 放大11倍再向下取整

  • 如何生成5-10的随机数?

    Math.floor(Math.random() * (5 + 1)) + 5

  • 如何生成N-M之间的随机数?

    Math.floor(Math.random() * (M - N + 1)) + N

    function getRandom(N, M) {
    	return Math.floor(Math.random() * (M - N + 1)) + N
    }
    console.log(getRandom(4,8)) 
    

    案例1 随机点名案例

    需求:请把 [‘赵云’, ‘黄忠’, ‘关羽’, ‘张飞’, ‘马超’, ‘刘备’, ‘曹操’] 随机显示一个名字到页面中

    分析:

    ①:利用随机函数随机生成一个数字作为索引号

    ②: 数组[随机数] 生成到页面中

    let names = ['赵云', '黄忠', '关羽', '张飞', '马超', '刘备', '曹操'] 
    let random = Math.floor(Math.random()*7)
    console.log(names[random])
    

    案例2 随机点名案例改进

    需求:请把 [‘赵云’, ‘黄忠’, ‘关羽’, ‘张飞’, ‘马超’, ‘刘备’, ‘曹操’] 随机显示一个名字到页面中,但是不允许重复显示

    let arr = ['赵云', '黄忠', '关羽', '张飞', '马超', '刘备', '曹操']
    // 1. 得到一个随机数, 作为数组的索引号, 这个随机数 0~6
    let random = Math.floor(Math.random() * arr.length)
    // 2. 页面输出数组里面的元素 
    document.write(arr[random])
    // 3. splice(起始位置(下标), 删除几个元素)
    arr.splice(random, 1)
    console.log(arr)
    

    案例3 猜数字游戏

    需求:程序随机生成 1~10 之间的一个数字,用户输入一个数字

    ①:如果大于该数字,就提示,数字猜大了,继续猜

    ②:如果小于该数字,就提示,数字猜小了,继续猜

    ③:如果猜对了,就提示猜对了,程序结束

      // 1. 随机生成一个数字 1~10
        // 取到 N ~ M 的随机整数
        function getRandom(N, M) {
          return Math.floor(Math.random() * (M - N + 1)) + N
        }
        let random = getRandom(1, 10)
        console.log(random)
        
        // 需要不断的循环
        while (true) {
          // 2. 用户输入一个值
          let num = +prompt('请输入你猜的数字:')
          // 3. 判断输出
          if (num > random) {
            alert('您猜大了')
          } else if (num < random) {
            alert('您猜小了')
          } else {
            alert('猜对啦,真厉害')
            break  // 退出循环
          }
        }
    

    案例4 生成随机颜色(没做出来)

    需求:该函数接收一个布尔类型参数,表示颜色的格式是十六进制还是rgb格式。

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

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

    ③:格式:

    function getRandomColor(flag){
    }
    console.log(getRandomColor(true)) //#ffffff
    console.log(getRandomColor(false)) //rgb(255,255,255)
    

    分析:

    提示: 16进制颜色格式为: ‘#ffffff’ 其中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之间的数字

    
    

    案例5 综合渲染案例(没看)

    JavaScript基础五对象 内置对象 Math.random(),在这里插入图片描述,第1张

    
        
        

    精品推荐

    查看全部

网友评论

搜索
最新文章
热门文章
热门标签
 
 梦见大门关不上是什么意思  梦见自己洗头运气好不好  十二生肖的寓意