Javascript 创建与数组中的数字不同的随机数

Javascript 创建与数组中的数字不同的随机数,javascript,arrays,Javascript,Arrays,我有一个数组,例如[2,8,5,6],我想生成一个与数组中的数字不同的随机数,这个数字不大于100 非常感谢朋友们您可以生成一个最大值的数字数组,然后删除不需要的数字,然后从生成的数组中选择一个随机元素,例如: const max=100 const exclude=[2,8,5,6] const randomIdx=Math.floor(Math.random()*(max+1-exclude.length)) const randomNum=[…数组(max+1).keys()]过滤器(k=

我有一个数组,例如[2,8,5,6],我想生成一个与数组中的数字不同的随机数,这个数字不大于100


非常感谢朋友们

您可以生成一个最大值的数字数组,然后删除不需要的数字,然后从生成的数组中选择一个随机元素,例如:

const max=100
const exclude=[2,8,5,6]
const randomIdx=Math.floor(Math.random()*(max+1-exclude.length))
const randomNum=[…数组(max+1).keys()]过滤器(k=>!exclude.includes(k))[randomIdx]
console.log(随机数)

使用Set避免冲突

arr=[2,8,5,6]
getRandom=(排除,最小值=0,最大值=100)=>{
设rand=Math.random()*100 | 0
而(exclude.has(rand))rand=min+Math.random()*max | 0
排除。添加(兰德)
返回兰德
}
arr=新设置(arr)
控制台日志(getRandom(arr))
控制台日志(getRandom(arr))
控制台日志(getRandom(arr))
控制台日志(getRandom(arr))

console.log([…arr])
请显示您尝试了什么