javascript - 生成 3 个非重复值

标签 javascript html

我必须每 2 秒生成 3 个 0-9 的随机数,它可以工作,但是在某些情况下我会得到重复的值,例如 4 7 7 。如果有人能指出我的错误,那就太好了,谢谢

if (firstNum == secondNum || firstNum == thirdNum) {
  firstNum = Math.floor((Math.random() * 9) + 1);
} else if (secondNum == firstNum || secondNum == thirdNum) {
  secondNum = Math.floor((Math.random() * 9) + 1);
} else if (thirdNum == firstNum || thirdNum == secondNum) {
  thirdNum = Math.floor((Math.random() * 9) + 1);
}

最佳答案

保持简单

setInterval(function(){
  let first_number  = parseInt(Math.random()*10),
    second_number = null,
    third_number  = null;

  while (second_number == third_number || first_number == second_number || third_number == second_number){
    second_number = parseInt(Math.random()*10);
    third_number = parseInt(Math.random()*10);
  }

  console.log(first_number, second_number, third_number)
},2000)

关于javascript - 生成 3 个非重复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60041315/

相关文章:

html - Bootstrap Column 6 图片问题

javascript - 多种预定义样式或动态更改内联样式?

jquery - 你使用 Ajax JSON 还是 HTML?

html - 我无法在 css 中设置任何 html/jsx 标签的样式,因为它说 'h1 "选择器“不纯”

javascript - 尝试隐藏/显示 div dx-field 类

javascript - JS 将 onClick Action 设置为在循环内创建的 Button

javascript - 阻止 UI 交互的元素

javascript - 动态调整 Iframe 大小以与 Chrome 配合使用

javascript - 向适合 url 的子级添加类

javascript - jshint 失败时停止 gulp 管道执行