Почему мы должны уменьшать переменную i и использовать функцию break в функции? - PullRequest
0 голосов
/ 26 сентября 2018

Какова цель уменьшения переменной «i» и использования «break» в этой функции?

function filteredArray(arr, elem){
  let newArr = [...arr];
  for(let i = 0; i < newArr.length; i++){
    for(let j = 0; j < newArr[i].length; j++){
      if(newArr[i][j] === elem){
        newArr.splice(i, 1);
        i--;
        break;
      }
    }
  }
  return newArr;
}

console.log(filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3));

1 Ответ

0 голосов
/ 26 сентября 2018

Это потому, что с помощью newArr.splice(i, 1); вы удаляете текущий элемент индекса из массива, поэтому, поскольку все индексы будут перемещены на -1 для всех элементов, следующих за i в каждом соединении, вам придется уменьшить i на 1,так что вы не пропустите элементы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...