拆分问题:
- 数组长度为 5;
- 生成 2-32 之间的随机数;
- 向数组中插入数值时,如果已存在则重新生成;
- 采用递归的方式,而非循环语句实现。
function getRandom(max, min) {
max = max + 1;
min = min || 0;
return Math.floor(Math.random() * (max - min)) + min;
}
function insertArr(arr, length, min, max) {
if (arr.length < length) {
var value = getRandom(max, min);
console.log('value=' + value);
if (!~arr.indexOf(value)) {
arr.push(value);
}
insertArr(arr, length, min, max);
}
}
var result = [];
insertArr(result, 5, 32, 2);
console.log(result);