За последние 24 часа нас посетили 22786 программистов и 1198 роботов. Сейчас ищет 741 программист ...

Функция на удаление элементов из массива

Тема в разделе "JavaScript и AJAX", создана пользователем Sergey2305, 8 июл 2020.

  1. Sergey2305

    Sergey2305 Новичок

    С нами с:
    19 авг 2019
    Сообщения:
    22
    Симпатии:
    1
    Добрый день! Внизу функция, которая удаляет заданный элемент из массива.

    function delElem(num, arr) {

    let elem = arr.indexOf(num);

    arr.splice(elem, 1);

    return arr;
    }

    console.log(delElem(6, [1, 2, 3, 4, 6, 9, 8, 6]));

    Функция удаляет из массива только одно число шесть. Подскажите, как прописать в функции, чтобы удалялись из массива все одинаковые числа, в нашем случае оба числа 6.
     
  2. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    Код (Javascript):
    1. let arr = [1, 2, 3, 4, 6, 9, 8, 6];
    2.  
    3. console.log( delElem( 6, arr ) );
    4.  
    5. function delElem( num, arr ) {
    6.     arr = arr.filter(item => item !== num);
    7.     return arr;
    8. }
     
  3. Sergey2305

    Sergey2305 Новичок

    С нами с:
    19 авг 2019
    Сообщения:
    22
    Симпатии:
    1
    Спасибо! Работает. А другие варианты есть?
     
  4. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    А что тебе нужно?
     
  5. voral

    voral Активный пользователь

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    С извратом можно еще напридумывать. например
    Код (Javascript):
    1. let arr = [1, 2, 6, 3, 4, 5,6], test = 6;
    2. let result = arr.reduce(function(res, current) {
    3.     if (current !== test) {
    4.          res.push(current);
    5.     }
    6.   return res;
    7. }, []);
    только зачем?