js生成给定范围内的随机数
生成范围内随机数
公式:Math.floor(Math.random()*(max-min+1)+min);
举个例子:生成2-32之间的随机数,Math.floor(Math.random()*31+2)
顺带做个习题:用递归算法实现,数组长度为5且元素的随机数在2-32间不重复的值
var arr = new Array(5);
function insertRandom(n) {
if (n < 0) return
let tmp = Math.floor(Math.random() * 31 + 2)
if (arr.indexOf(tmp) !== -1) return insertRandom(n)
arr[n] = tmp
return insertRandom(n - 1)
}
insertRandom(arr.length - 1)
给定范围和长度,生成数组
function createArray(len, minNum, maxNum) {
var createRandom = (min, max) => { return (Math.round((max - min) * Math.random()) + min)};
var arr = new Array(len), count = 0;
function run() {
var num = createRandom(minNum, maxNum);
(!arr.includes(num)) && (arr[count] = num, count++);
(count < len) && (run());
}
run(); return arr;
}
const a=createArray(5, 2, 32)
console.log(a);
---记录今天的自己---

浙公网安备 33010602011771号