JS 中的随机数方法 Math.random()

有时候项目中遇到一个功能需要随机返回多条不重复的数据,也可以是拿了就用,下次再需要时已经忘记如何使用了。

js中的生成随机数操作是基于 Math 方法下的 random() 方法

Math.random() : 随机获取范围内的一个数 ( 精确到小数点后14位 )

  • 随机生成一个 0 ~ 1 之间的数:
Math.random()
  •  生成 小于 m 的随机数(含小数):
Math.random() * 60

  • 生成 小于m 的整数:

可以使用 parseInt 去除小数点的形式将生成的随机数转换为整数

parseInt(Math.random() * 60)

  • 生成向下取整的随机整数:

使用Math方法下的floor属性进行舍弃小数向下取整, 当然你也可以使用 Math.ceil 向上取整

Math.floor(Math.random() * 60 )

  • 表示生成 n~m+n 之间的随机数:
    Math.random() * 60 + 8
    
    // 8 ~ 68 

  • 生成 -n~m+n 之间的随机数:
Math.random() * 60 - 8

// -8 ~ 52
  • 生成 -m~0 之间的随机数:
Math.random() * 60 - 60

// -60 ~ 0 

  • 生成 n~m 之间的随机整数(包括n与m):
    Math.floor(Math.random() * (8 - 100)) + 100  
    
    // n ~ m

  •  随机生成字符串,截取出来

Math.random().toString(36).substring(2)

  • 随机生成字符串6位,不够6位,补 0
function randomString(len = 6) {
    return Math.random().toString(36).substring(2, 2 + len).padEnd(len, '0')
}

 JS 中的随机数方法 Math.random()_第1张图片

 随机生成字符串,如过传递的len 是大于11的,处理方法

function randomString(len = 6) {
    if(len <= 11){
        return Math.random().toString(36).substring(2, 2 + len).padEnd(len, '0')
    } else {
        return randomString(11) + randomString(len - 11)
    }
}

JS 中的随机数方法 Math.random()_第2张图片

你可能感兴趣的:(javascript)