如何获取数组的每个第3个元素

Mih*_*šič 10 javascript arrays

我有一个数组,并希望只返回每个第三个元素作为一个新数组(从0开始).

例如:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let newArr = [1, 4, 7];
Run Code Online (Sandbox Code Playgroud)

这是我目前这样做的方式:

let newArr = [];
for(let x = 0; x < arr.length; x += 3) {
   newArr.push(arr[x]);
}
return newArr;
Run Code Online (Sandbox Code Playgroud)

有没有办法用arr.map做到这一点?有没有更简单的方法来做到这一点?

Raj*_*amy 14

你也可以这样做filter,

let newArr = arr.filter((_,i) => i % 3 == 0); 
Run Code Online (Sandbox Code Playgroud)

但请记住,在某些情况下,使用基本for循环比其他循环更有效.