function getRandom(min, max) {
return Math.round(Math.random() * (max - min) + min)
}
function getRandomArray(length, min, max, result) {
const range = max - min + 1
if (range < 1) throw new Error('Invalid range: Maximum must be bigger than minimum')
if (range < length) throw new Error('Invalid range: Range must be bigger than length')
if (result.length > length) throw new Error('Invalid target length: Target length must be bigger than initialization array length')
for (let index = 0; index < length; index++) {
result.push(getRandom(min, max))
}
result = [...new Set(result)]
if (result.length < length) return getRandomArray(length, min, max, result)
else return result
}