首页 > 解决方案 > 从java脚本随机函数中排除一个数字

问题描述

我需要获取一个随机数,而不是给定的数字,并且在 java 脚本的范围之间。例如给定的数字是 1 我需要一个 0-4 之间的随机数而不是给定的数字 1

用过的
Math.floor(Math.random()*5)

获取 1 到 4 的随机数

但是如果给定的数字是 1 它不应该从 0-4 范围内返回该数字

如果我给出一个数字 1,我希望得到一个从 2 到 4 的数字,因为范围是从 0 到 4

标签: javascript

解决方案


您可以使用while循环并生成随机数,直到它与给定的相同。下面是演示

function getRandomNum(num){
  let x = Math.floor(Math.random() * 5);
  while(x === num){
    x = Math.floor(Math.random() * 5)
  }
  return x;
}
document.querySelector('button').onclick = function(){
  document.querySelector('div').innerHTML = getRandomNum(1)
}
<button>Get Random Number</button>
<div></div>


推荐阅读