如何從 JavaScript 陣列中移除每隔 N 個元素?


比如,我們必須編寫一個函式 remove Nth,它接收一個數組和一個數字 n,並就地移除陣列中的每 n 個元素。

可以使用 Array.prototype.splice() 方法完成此操作,以下是執行此操作的程式碼 -

示例

const arr = ['T','h','a','i','s','b',' ','i','c','s','
','a','t','h','e','e',' ','t','s','o','r','n','g','t','
','t','n','h','a','s','t',' ','o','n','e','o','v','e','a','r','
','f','e','n','a','d','s','p',','];
const removeNth = (arr, n) => {
   for(let i = n-1; i < arr.length; i += n){
      arr.splice(i, 1);
   };
};
removeNth(arr, 2);
console.log(arr);

輸出

控制檯中的輸出將為 -

[
   'T', 'a', 'i', 'b', ' ', 'c',
   's', 'a', 't', 'e', 'e', 't',
   's', 'r', 'n', 't', ' ', 'n',
   'h', 's', 't', 'o', 'n', 'o',
   'v', 'a', 'r', 'f', 'e', 'a',
   'd', 'p', ','
]

更新於: 26-Aug-2020

977 次瀏覽

開啟你的生涯

透過完成課程獲得認證

開始使用
廣告