javascript - 生成10个随机数,不重复有那么难吗?

标签 javascript

我觉得这应该是一个简单的练习:

1.- 生成 10 个随机数 (0-99) 并存储在数组中。

2.- 数字不应重复。

但是我从网上得到的所有答案都是非常复杂或者代码过长。

在下面的代码中我已经生成了 10 个数字,但它们不断重复。有任何想法吗?? (我尝试了 If/else 但没有成功):(

numbers=[]
for(i=0;i<10;i++){
var oneRandomNum = Math.floor(Math.random()*100);
numbers.push(oneRandomNum); 
}

console.log(numbers);

非常感谢!!!! :)

最佳答案

您可以向 Set 中重复添加数字,并在其大小达到 10 时停止:

const set = new Set();
while (set.size !== 10) {
  set.add(Math.floor(Math.random() * 100));
}
const numbers = [...set];
console.log(numbers);

关于javascript - 生成10个随机数,不重复有那么难吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61167040/

相关文章:

Javascript 事件似乎没有添加到动态生成的文本框中

javascript - 使用 underscore.js 展平对象的 javascript 数组

Javascript如何优化这个计数数组值函数

javascript - 如何让 jQuery 自动完成在用户点击提交时执行 search()

javascript - 如何从 javascript 触发按钮 onmouseup 处理程序

Javascript 字符代码 - 关键代码 0

javascript - 使用正则表达式组合两个 HTML 数据值

JavaScript:如何确定用户浏览器是否为 Chrome?

javascript - jQuery 每个循环 3 维对象数组

javascript - 单击屏幕关闭 Canvas 菜单