public static getNUniqueNumbers(min, max, n) {
if (min > max) {
[min, max] = [max, min];
}
let range = max - min;
if (range <= n) {
return GameTool.getOrderArrByLen(range).map(item => { item + min })
}
let _arr = []
for (let i = 0; i < n; i++) {
let random = Math.floor(Math.random() * (range + 1))
if (_arr.indexOf(random + min) === -1) {
_arr.push(random + min)
} else {
let flag = true
while (flag) {
random++
if (random >= range) {
random = 0
}
if (_arr.indexOf(random + min) === -1) {
flag = false
_arr.push(random + min)
}
}
}
}
网友评论