Есть ли способ объединить карту и сдвиг в Javascript? - PullRequest
0 голосов
/ 26 декабря 2018

Я работаю с буферным массивом, который я периодически проверяю.Когда я сопоставляю элементы, я хотел бы получить доступ к элементу с помощью метода shift, таким образом я бы получил следующий элемент в массиве и также удалил бы его.Есть ли способ сделать это на карте?Спасибо!

В настоящее время у меня есть наивное решение, которое подвержено условиям гонки.

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

1 Ответ

0 голосов
/ 26 декабря 2018

Как я хотел бы просмотреть элементы массива один за другим и удалить текущий элемент из массива.По этой причине простое и отличное решение - использовать цикл while с методом shift.Например:

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

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