如何从随机生成数组 JavaScript 中排除某些值


我们必须创建一个函数,它接受 2 个参数:一个整数和一个整数数组。第一个参数表示我们要返回的数组的长度,第二个参数包含不应该出现在我们返回数组中的元素。事实上,我们需要一个介于 0 到 100 之间的随机数数组,但它不应包含参数数组中存在的任何元素。

注意 - 没有两个数字应该重复。

我们称我们的函数 generateRandom()。此代码如下 -

示例

const absentArray = [44, 65, 5, 34, 87, 42, 8, 76, 21, 33];
const len = 10;
const generateRandom = (len, absentArray) => {
   const randomArray = [];
   for(let i = 0; i < len; ){
      const random = Math.floor(Math.random() * 100);
   if(!absentArray.includes(random) &&
      !randomArray.includes(random)){
         randomArray.push(random);
         i++;
      }
   };
   return randomArray;
}
console.log(generateRandom(len, absentArray));

输出

控制台中的输出为 -

[
   23, 93, 29, 25, 37,
   63, 54, 11, 69, 79
]

更新于: 19-8-2020

1K+ 查看

开启你的 职业生涯

通过完成课程获得认证

开始
广告