JQuery Удалить массив из массива массивов

0

Таким образом, у меня есть массив из 2-элементных массивов, и мне интересно, знает ли кто-нибудь из вас, как удалить массив с учетом двух элементов массива.

Например, массив будет содержать следующие элементы:

[1, 3]
[2, 5]
[1, 1]

Учитывая два числа 2 и 5 в этом порядке, есть ли способ удалить второй массив?

  • 0
    Вы хотите удалить любые / все массивы, содержащие именно эти 2 числа в любом порядке?
  • 0
    Я попытался создать новый массив и затем использовать indexOf, прежде чем понял, что indexOf не работает таким образом. Я также рассмотрел итерацию цикла for, проверку каждого массива в каждом индексе на предмет совпадения и сохранение его, если оно есть, а затем удаление его в конце, но мне было интересно, существует ли более эффективный метод.
Теги:
arrays
multidimensional-array

2 ответа

0
Лучший ответ

Вы можете попробовать что-то вроде этого:

var arr = [[1, 3], [2, 5], [1, 1]];
var result = [];

for(var i = 0, len = arr.length; i < len; i++) {
   // If the element is the one we don't wan't, skip it
   if(arr[i][0] == 2 && arr[i][1] == 5) {
       continue;
   }
   // Otherwise, add it to the result
   result.push(arr[i]);
}

console.log(result); //[[1, 3], [1, 1]]

Вы можете добавлять или извлекать любую логику из цикла в соответствии с вашими потребностями

  • 0
    Спасибо! Я подумал об использовании цикла for и сохранении индексов, но я не знал, что в javascript есть оператор continue.
2

Найдите массив для соответствия некоторым методом. Вы можете попробовать каждый, сравнивающий каждый список в большем списке с указанным вами списком, или создать список из приведенных вами чисел и передать это. Затем сравните элемент за пунктом для каждого списка, пока вы не сравните каждый элемент за пунктом.

Если вы обнаружите, что он использует этот индекс и изучает метод сплайсинга из библиотеки javascript. Например, my_lisy.splice(2,2) 1 относится к индексу списка, а аргумент два относится к количеству элементов для удаления.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню