有没有办法在Javascript中结合map和shift?

时间:2018-12-26 20:10:46

标签: javascript arrays loops shift

我正在使用一个定期检查的缓冲区数组。当我在元素之间进行映射时,我想使用shift方法访问元素,这样一来,我将获取数组中的下一个元素并将其删除。有没有办法在地图上做到这一点?谢谢!

我目前有一个幼稚的解决方案,很容易出现比赛条件。

if (timestep) {
    bufferArray.map((mvt) =>{
        console.log(mvt)
    });
    bufferArray = [];
} 

1 个答案:

答案 0 :(得分:0)

我想一个遍历数组的元素,然后从数组中删除当前元素。因此,一个简单而有效的解决方案是将while循环与shift方法一起使用。例如:

let arr = [0,1,2,3,4,5];

while (arr.length)
{
    let current = arr.shift()
    // do something with current
}