Как удалить определенный элемент из массива js

Аватар пользователя Виктория Аблаева
Виктория Аблаева
18 октября 2022

Часто бывает в задачах, что нам требуется удалить из массива определенный элемент.
Один из способов - это воспользоваться функцией высшего порядка filter:

// К примеру, дан массив из чисел:
const numbers = [1, 2, 3, 4, 5];

//необходимо удалить элемент, который равен трём.
const numberToDelete = 3;

//фильтруем исходный массив. 
//А для того, чтобы его не мутировать, присвоим его в новую переменную.
const filteredNumbers = numbers.filter((number) => number !== numberToDelete);
console.log(filteredNumbers); // => [1, 2, 4, 5]

//Готово!

Также есть самый явный способ для удаления элемента массива с помощью ключевого слова delete:

let fruits = ['banana', 'orange', 'apple'];

//Допустим, что нам нужно удалить нулевой элемент массива.
delete fruits[0];
console.log(fruits); // => [ <1 empty item>, 'orange', 'apple' ]

Обратите внимание, что на месте нулевого элемента осталось пустое место. Как правило, удалять элемент массива таким способом не является хорошей практикой. Данный способ приведен в качестве примера.

Если вам нужно удалить последний элемент массива, для этого есть способ - это метод pop(). Перейдём к примеру:

const fruits = ['banana', 'orange', 'apple'];
fruits.pop();
console.log(fruits); // получаем => [ 'banana', 'orange' ]

Но это еще не всё!
Одним из наиболее удобных методов для удаления элемента массива является метод splice():

const names = ['John', 'Darina', 'Mark', 'Kris']; 
//допустим, что дан массив имён.
// Нам необходимо удалить из массива второй элемент.
names.splice(2, 1); // начиная со второго элемента удаляем один элемент
console.log(names); // => [ 'John', 'Darina', 'Kris' ]

Это не все способы удаления элементов из массива, но и среди указанных можно найти метод по душе или же придумать что-то свое.

Документация:

  • Функция высшего порядка filter
  • Метод splice()
  • Метод pop()
3 0
Аватар пользователя Roman Ashikov
Roman Ashikov
28 октября 2021

Правильным способом удаления элемента из массива будет использование метода splice(). Этот метод принимает три аргумента, но нам нужны только первые два из них. Это индекс начиная с которого мы хотим удалить элементы. А также количество элементов, которые будут удалены из массива. Взгляните на пример ниже:

const letters = ["a", "b", "c"];
const index = 1;
array.splice(index, 2);
console.log(letters); // => [ 'a' ]
1 0
Аватар пользователя user-f91d7b8e63fd3182
user-f91d7b8e63fd3182
17 декабря 2023

ппц, не думал что удалить элемент из массива по индексу со смещением в JS это такой ппц.

// удалить из массива значение по индексу со смещением
// массив который обрабатываем, элемент в массиве который удаляем
    function array_splice( array, key ){

        resoltArray = new Array();

        // перебираем массив
        for( let i = 0; i < array.length; i++ ){

            if( i != key ){

                // добавляем значение в массив
                resoltArray.push( array[ i ] );
            }
        }

        return resoltArray;
    }

array = array_splice( array, key );


Зачем разрабы городили огород не понятно.

0 0
Основы Frontend за 14 дней
  • 72 урока в онлайн-тренажере
  • 4 живых вебинара и масскодинг
  • Помощь наставника на весь период обучения

Есть что добавить? Зарегистрируйтесь

или войдите в аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Курсы по программированию в Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Интенсивные курсы

Интенсивное обучение для продолжающих

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Веб-разработка и автоматическое тестирование на Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Go

Курсы по веб-разработке на языке Go

HTML

Современная верстка с помощью HTML и CSS

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Git

Система управления версиями Git, регулярные выражения и основы командой строки