工具函数系列-随机数

随机数:Math.random() 函数返回一个浮点数, 伪随机数在范围[0, 1)

指定长度随机字符串

const chars = [ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
  				'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 
               	'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',
  				'U', 'V', 'W', 'X', 'Y', 'Z' ]
function generateMixed(n) {
  let res = ''
  for (let i = 0; i < n; i++) {
    res += chars[Math.ceil(Math.random() * 35)]
  }
  return res
}

(min, max)

function random(lower, upper) {
	return Math.ceil(Math.random() * (upper - lower)) + lower + 1;
}

[min, max)

function random(lower, upper) {
	return Math.floor(Math.random() * (upper - lower)) + lower;
}

[min, max]

function random(lower, upper) {
	return Math.floor(Math.random() * (upper - lower + 1)) + lower;
}  

生成随机数列表

/**
 * 随机数字数组
 * @param {number} max 
 * @param {number} len 
 * @returns 
 */
export function randomNumberList(max, len) {
  let arr = []
  let index = 0
  do {
    index = Math.floor(Math.random() * (max + 1))
    if (arr.indexOf(index) === -1) {
      arr.push(index)
    }
  } while (arr.length !== len)
  return arr
}