Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.04.2014, 21:58
Интересующийся
Отправить личное сообщение для jeka123 Посмотреть профиль Найти все сообщения от jeka123
 
Регистрация: 21.08.2013
Сообщений: 17

Удалить данные с массива
Ребят есть массив такого формата на js
10,Иван,1
43,Петя,2
56,Вася,2
12,Коля,2
34,Зерг,1



как удалить все данные с массива у которых 3-ий елемент массива = 1?
Ответить с цитированием
  #2 (permalink)  
Старый 08.04.2014, 22:01
Аватар для nice_try
Профессор
Отправить личное сообщение для nice_try Посмотреть профиль Найти все сообщения от nice_try
 
Регистрация: 11.12.2013
Сообщений: 313

выложи свои попытки
Ответить с цитированием
  #3 (permalink)  
Старый 08.04.2014, 22:47
Интересующийся
Отправить личное сообщение для jeka123 Посмотреть профиль Найти все сообщения от jeka123
 
Регистрация: 21.08.2013
Сообщений: 17

var arr = [
[10,'Иван',1],
[43,'Петя',2],
[56,'Вася',2],
[12,'Коля',2],
[34,'Зерг',1]
];

for (var i = arr.length-1; i >= 0; --i) {
а тут не пойму как найти 3 тий элементв массиве и сравнить
}
Ответить с цитированием
  #4 (permalink)  
Старый 08.04.2014, 23:03
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,482

var arr = [
        [10, 'Иван', 1],
        [43, 'Петя', 2],
        [56, 'Вася', 2],
        [12, 'Коля', 2],
        [34, 'Зерг', 1]
      ];

      for (var i = 0, el; i < arr.length; i += 1) {
        el = arr[i];
        if (el[2] === 1) {
          alert(el);
          arr.splice(i--, 1);
        }
      }
      alert(arr);

Последний раз редактировалось Vlasenko Fedor, 09.04.2014 в 00:02. Причина: Поправил с. Дзен-трансгуманист
Ответить с цитированием
  #5 (permalink)  
Старый 08.04.2014, 23:14
Интересующийся
Отправить личное сообщение для jeka123 Посмотреть профиль Найти все сообщения от jeka123
 
Регистрация: 21.08.2013
Сообщений: 17

el[2] -- это тут выбираеться 3 тий столбец в массиве?
Ответить с цитированием
  #6 (permalink)  
Старый 08.04.2014, 23:29
Аватар для Дзен-трансгуманист
√₋̅₁̅
Отправить личное сообщение для Дзен-трансгуманист Посмотреть профиль Найти все сообщения от Дзен-трансгуманист
 
Регистрация: 18.06.2012
Сообщений: 385

Сообщение от Poznakomlus
arr.splice(i, 1);
Типичная ошибка при прореживании списков.
Нужно либо выносить инкремент в else, либо:
arr.splice(i--, 1);
__________________

Гейзенберг, возможно, читал этот тред.
Ответить с цитированием
  #7 (permalink)  
Старый 08.04.2014, 23:51
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

arr = arr.filter(function (item) {
    return item[2] != 1;
});
Ответить с цитированием
  #8 (permalink)  
Старый 09.04.2014, 15:42
Интересующийся
Отправить личное сообщение для jeka Посмотреть профиль Найти все сообщения от jeka
 
Регистрация: 15.08.2013
Сообщений: 21

Спасибо всем за помощь)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить из массива пустые элементы dima*** Общие вопросы Javascript 48 14.02.2014 12:47
Из одного массива удалить элементы другого... t3mir1an Events/DOM/Window 4 22.10.2013 10:14
Как достать данные из JSON массива? Dimaz jQuery 15 27.11.2012 19:58
как найти и удалить массив из массива? FRIE Общие вопросы Javascript 8 14.03.2011 14:48
Как удалить элемент массива? velo Общие вопросы Javascript 2 05.02.2010 14:58