您的位置:

详解JavaScript随机数生成

JavaScript是一种强大的编程语言,在JavaScript中,生成随机数是很常见的需求,随机数可以应用在游戏、抽奖、随机数据等场景中。本文将从不同的角度详解JavaScript随机数的生成方法,让你能够熟练的利用JavaScript生成随机数。

一、JavaScript生成1到100的随机数

1、利用Math.random()函数生成0到1的随机小数

function genNum(){
  var num = Math.floor(Math.random() * 100);
  return num + 1;
}
console.log(genNum());

2、使用Math.floor()函数将随机小数向下取整,使得结果在0~99之间

3、再将结果加1,使得结果在1~100之间

二、JavaScript生成不重复的随机数

1、创建一个空数组,用来保存随机数

2、使用while循环来生成随机数,直到数组中元素个数达到指定大小

3、每次生成随机数前,先判断数组中是否包含该随机数,若不包含才添加到数组中

function genNumArray(length, maxNum) {
  var nums = [];
  var idx = 0;
  while (idx < length) {
    var num = Math.floor(Math.random() * maxNum) + 1;
    if (nums.indexOf(num) === -1) {
      nums.push(num);
      idx ++;
    }
  }
  return nums;
}
console.log(genNumArray(5, 10));

三、JavaScript随机数生成函数

1、编写一个函数用于生成指定范围内的随机数,函数需要接收参数,包括最小值和最大值

2、计算随机数的范围为(max - min) + 1,保证在指定范围内每个数出现的概率相等

3、使用Math.floor()函数将随机数向下取整,再加上最小值,保证随机数在指定范围内取值

function randomNumber(min, max){
  return Math.floor(Math.random() * (max - min + 1)) + min;
}
console.log(randomNumber(10, 30));

四、JavaScript随机数五花八门

1、JavaScript生成指定长度随机字母

function randomString(len){
  var chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
  var result = "";
  for (var i = 0; i < len; i++){
    result += chars.charAt(Math.floor(Math.random() * chars.length));
  }
  return result;
}
console.log(randomString(10));

2、JavaScript生成随机布尔值

function randomBoolean(){
  return Math.random() >= 0.5;
}
console.log(randomBoolean());

3、JavaScript生成随机RGB颜色

function randomColor(){
  var r = Math.floor(Math.random() * 256);
  var g = Math.floor(Math.random() * 256);
  var b = Math.floor(Math.random() * 256);
  return "rgb(" + r + ", " + g + ", " + b + ")";
}
console.log(randomColor());

4、JavaScript生成随机十六进制颜色

function randomHexColor(){
  var color = Math.floor(Math.random() * 0xFFFFFF).toString(16).padStart(6, '0');
  return "#" + color;
}
console.log(randomHexColor());

5、JavaScript生成随机UUID

function uuid(){
  return Math.random().toString(36).substr(2, 9);
}
console.log(uuid());
总结:JavaScript生成随机数是很常见的需求,本文从不同的角度详解了JavaScript随机数的生成方法,旨在让读者能够熟练的利用JavaScript生成随机数。