随机数的生成

Math对象的random方法返回0到1之间的伪随机数,可能等于0,但一定小于1。

生成给定范围内的随机数,包括min但不包含max

function getRandomArbitrarty(min, max) {
  return Math.random() * (max - min) + min;
}

生成给定范围内的随机数,包括min也包含max

function getRandomArbitrarty(min,max) {
  return Math.random() * (max - min + 1) + min;
}

生成给定范围内的整数

function getRandomArbitrarty(min, max) {
  return Math.floor(Math.random() * (max - min) + min);
}

//  使用Math.floor方法对数值进行向下取整,Math.ceil方法向上取整

生成一个随机字符串

function random(min, max) {
  return Math.floor(Math.random() * (max - min) + min);
}

function randomStr(len) {
  var str = '';
  var dict = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  for (var i = 0; i < len; i++) {
    str += dict[random(0, 62)];
  }
  return str;
}

var newStr = randomStr(8);
console.log(newStr);

生成一个随机IP地址

IP地址的范围是:0.0.0.0 ~255.255.255.255
由于Math.random()生成的随机数包括0,但是不包括1,所以要生成0~255之间的随机数应该使用0~256的范围。

function random(min, max) {
  return Math.floor(Math.random() * (max - min) + min);
}

function randomIp() {
  var ipArr = [];
  for (var i = 0; i < 4; i++) {
    ipArr.push(random(0, 256));
  }
  return ipArr.join('.');
}

console.log(randomIp());

生成一个随机颜色

function randomColor() {
  var dict = '0123456789abcdef';
  var arr = [];
  for (var i = 0; i < 6; i++) {
    arr[i] = dict[Math.floor(Math.random() * 16)];
  }
  arr.unshift('#');
  return arr.join('');
}

console.log(randomColor());

更多随机颜色的获取方法:javascript获取随机颜色

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 方法1 (数据类型)(最小值+Math.random()*(最大值-最小值+1)) 例: (int)(1+Math...
    GB_speak阅读 41,199评论 2 6
  • 一:通过时间获得随机数 因为时间的唯一性,且不重复,所以可以从中获得同一时间的唯一值 6019@go:~$ dat...
    周宇超阅读 721评论 0 1
  • 一、26个字母随机生成32位字符串 二、产生随机数 获取一个随机整数范围在:[0,100)包括0,不包括100 获...
    lionsom_lin阅读 2,197评论 0 1
  • 使用 arc4random 生成随机数 获取一个随机整数范围在:[0,100)包括0,不包括100 获取一个随机数...
    sun岚枫阅读 6,209评论 1 0
  • 以下程序源于《通过游戏编程实战教新手学C++编程》P51 Die Roller。Die Roller程序模拟投掷六...
    九七学姐阅读 542评论 0 0