Функция JavaScript не работает.indexOf не определено - PullRequest
0 голосов
/ 04 января 2019
function filteredArray(arr, elem) {   let newArr = []; 

Пропускает все элементы вложенного массива.

for (let i=0;i<arr.length;i++){     
    for (let j=0;j<arr[i].length;j++){

Если значение на итерации равно переданному аргументу, предполагается, чтоустановить переменную x равной значению вложенного массива во время текущей итерации

  if (arr[i][j]==elem){ 
    let x = indexOf(arr[i][j]);

Предполагается удалить элемент с индексом, равным переменной x.

    arr[i][j].splice(x,1);

Затем предполагается перенести оставшийся вложенный массив в новый массив и затем впоследствии вернуть новый массив.

      newArr[i].push(...arr[i][j]);
      }
    }
  }
  console.log(newArr);
  return newArr;
}

ОДНАКО ОШИБКА, КОТОРАЯ ОКАЗЫВАЕТ 'indexOf не определен'

Я не понимаю, почему это не работает.Он возвращает indexOf как неопределенный для каждой итерации.Пожалуйста, посмотрите на комментарии.Пожалуйста, поделитесь своим мнением о моем коде, если вы не возражаете.

1 Ответ

0 голосов
/ 04 января 2019

indexOf - это метод array/string, который можно вызывать в массиве, например array.indexOf(element).В вашем случае вам нужно передать array.

Также вы можете пропустить indexOf, потому что здесь переменные i и j дадут соответствующий индекс родительского и вложенного массива

...