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.