- Иногда при работе с массивами очень удобно иметь возможность итерации по каждому элементу, чтобы найти один или несколько элементов, которые нам могут понадобиться, или манипулировать массивом на основе того, какие элементы данных соответствуют определенному набору критериев. Техника, которая является наиболее гибкой и предлагает нам наибольшее количество контроля, является простой для цикла.
- Пример: я определил функцию,
FilteredArray
, который беретобру
, вложенный массив иelem
в качестве аргументов и возвращает новый массив.elem
Представляет элемент, который может присутствовать или не присутствовать на одном или нескольких массивах, вложенных вобру
. Давайте изменим функцию, используя цикл для возврата отфильтрованной версии прошедшего массива, чтобы любой массив, вложенный вarr
Содержитelem
был удален.
function filteredArray(arr, elem) { let newArr = []; // Only change code below this line // Only change code above this line return newArr; } console.log(filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3));
- Отвечать:
function filteredArray(arr, elem) { let newArr = []; for (let i = 0; i < arr.length; i++) { let outer = arr[i]; if (outer.indexOf(elem) === -1) { //Checks every parameter for the element and if is NOT there continues the code newArr.push(outer); //Inserts the element of the array in the new filtered array } } return newArr; }
console.log(filteredArray([[10, 8, 3], [14, 6, 23], [3, 18, 6]], 18)); will display [[10, 8, 3], [14, 6, 23]]
Оригинал: «https://dev.to/rthefounding/iterating-through-all-an-array-s-items-using-for-loops-4g04»