JavaScript 从数组中移除随机元素,直到数组为空


我们已给定一个包含字符串/数字文字的数组。我们需要创建一个函数 removeRandom() ,该函数采用数组并递归地从数组中移除一个随机元素,同时不断打印,直到数组包含元素。

这可以通过使用 Math.random() 创建随机数,并使用 Array.prototype.splice() 移除该索引下的元素并打印,直到数组长度缩小到 0 来完成。

以下是执行此操作的代码 -

示例

const arr = ['Arsenal', 'Manchester United', 'Chelsea', 'Liverpool',
'Leicester City', 'Manchester City', 'Everton', 'Fulham', 'Cardiff City'];
const removeRandom = (array) => {
   while(array.length){
      const random = Math.floor(Math.random() * array.length);
      const el = array.splice(random, 1)[0];
      console.log(el);
   }
};
removeRandom(arr);

控制台中的输出可以是 -

注意 - 由于这是随机输出,因此每次输出都可能不同,因此这只是众多可能的输出之一。

输出

Leicester City
Fulham
Everton
Chelsea
Manchester City
Liverpool
Cardiff City
Arsenal
Manchester United

更新于:19-8-2020

2K+ 次浏览

开启您的 职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.