Как удалить элемент в массиве javascript

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

mdwqndlnqwfndeqfnlknflkjvnsjnvjksnklds lknsalndlksam mnalmfd;emq qmf;wnlfcnlsaclacfem lwqmf;lmqwlfnleksdnflkcwe lwmflmqwklfn eanfklcewkl s;qmjf;wqmfeqfwqklnfdkleqnfklenqlk nlkeqn lkvc ewklc eqlkv elkv elqv ejkf jkqeflcen qklfnlwkrn vle lkfewnlf wfklenqlfkneqklf

> i have init array ...
[{
        "idProduct": 1,
        "id":1,
        "name": "MacBook Air M1 2020 (RAM 8GB | 256GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 20000000,
        "ram": "8GB",
        "color": "#fbecd3",
        "storage": "256GB"
      },
      {
        "idProduct": 2,
        "id":1
        "name": "MacBook Air M1 2020 (RAM 16GB | 256GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 25000000,
        "ram": "16GB",
        "color": "#fbecd3",
        "storage": "256GB"
      },
      {
        "idProduct": 3,
        "id":1,
        "name": "MacBook Air M1 2020 (RAM 8GB | 512GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 23000000,
        "ram": "8GB",
        "color": "#fbecd3",
        "storage": "512GB"
      },
      {
        "idProduct": 4,
        "id":1,
        "name": "MacBook Air M1 2020 (RAM 16GB | 512GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 28000000,
        "ram": "16GB",
        "color": "#fbecd3",
        "storage": "512GB"
      },
      
        "idProduct": 1,
        "id":2,
        "name": "iPhone 13 Pro Max 256GB",
        "image": "https://i.ibb.co/9qFqM5g/iphone-13-pro-green-profile.png",
        "price": 30000000,
        "color": "green",
        "storage": "256GB"
      },
      {
        "idProduct": 2,
        "id":2,
        "name": "iPhone 13 Pro Max 128GB",
        "price": 28000000,
        "image": "https://i.ibb.co/9VGBNV6/iphone-13-pro-gold-profile.png",
        "color": "#fbecd3",
        "storage": "128GB"
      },
      {
        "idProduct": 3,
        "id":2,
        "name": "iPhone 13 Pro Max 256GB",
        "price": 30500000,
        "image": "https://i.ibb.co/9VGBNV6/iphone-13-pro-gold-profile.png",
        "color": "#fbecd3",
        "storage": "256GB"
      },
      {
        "idProduct": 4,
        "id":2,
        "name": "iPhone 13 Pro Max 128GB",
        "price": 27000000,
        "image": "https://i.ibb.co/9qFqM5g/iphone-13-pro-green-profile.png",
        "color": "green",
        "storage": "128GB"
      }
]

and element array:
      {
        "idProduct": 3,
        "id":2,
        "name": "iPhone 13 Pro Max 256GB",
        "price": 30500000,
        "image": "https://i.ibb.co/9VGBNV6/iphone-13-pro-gold-profile.png",
        "color": "#fbecd3",
        "storage": "256GB"
      },


 


result i need

[{
        "idProduct": 1,
        "id":1,
        "name": "MacBook Air M1 2020 (RAM 8GB | 256GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 20000000,
        "ram": "8GB",
        "color": "#fbecd3",
        "storage": "256GB"
      },
      {
        "idProduct": 2,
        "id":1
        "name": "MacBook Air M1 2020 (RAM 16GB | 256GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 25000000,
        "ram": "16GB",
        "color": "#fbecd3",
        "storage": "256GB"
      },
      {
        "idProduct": 3,
        "id":1,
        "name": "MacBook Air M1 2020 (RAM 8GB | 512GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 23000000,
        "ram": "8GB",
        "color": "#fbecd3",
        "storage": "512GB"
      },
      {
        "idProduct": 4,
        "id":1,
        "name": "MacBook Air M1 2020 (RAM 16GB | 512GB SSD)",
        "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
        "price": 28000000,
        "ram": "16GB",
        "color": "#fbecd3",
        "storage": "512GB"
      },
      
        "idProduct": 1,
        "id":2,
        "name": "iPhone 13 Pro Max 256GB",
        "image": "https://i.ibb.co/9qFqM5g/iphone-13-pro-green-profile.png",
        "price": 30000000,
        "color": "green",
        "storage": "256GB"
      },
      {
        "idProduct": 2,
        "id":2,
        "name": "iPhone 13 Pro Max 128GB",
        "price": 28000000,
        "image": "https://i.ibb.co/9VGBNV6/iphone-13-pro-gold-profile.png",
        "color": "#fbecd3",
        "storage": "128GB"
      },
      {
        "idProduct": 4,
        "id":2,
        "name": "iPhone 13 Pro Max 128GB",
        "price": 27000000,
        "image": "https://i.ibb.co/9qFqM5g/iphone-13-pro-green-profile.png",
        "color": "green",
        "storage": "128GB"
      }
]

«извините, я не могу обдумать длинный вопрос» — Как насчет добавления вашего исследования или ваших попыток? См. Какие исследовательские усилия ожидаются от пользователей Stack Overflow?.

Sebastian Simon 17.11.2022 02:54

Я думаю, это немного трудно для вас. Но давайте постараемся сделать все возможное. В общем, формат вопроса должен быть таким: «У меня есть [ваш массив, ввод и т. д.], я хочу [то, что вы хотите, вывод,...], и это моя проба [ваша реализация], но… ."

hoangdv 17.11.2022 03:01

Я читал, но я не думаю, что это

Minh Quang 17.11.2022 03:03

@hoangdv я пытался сделать, но я так не думаю, поэтому я публикую вопрос и надеюсь на полезный ответ

Minh Quang 17.11.2022 03:06
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
3
5
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Чтобы проверить элементы массива, вам нужно перебрать массив и найти элемент, который нужно удалить.

Array.filter — это самый простой способ отфильтровать элементы массива без изменения исходного массива.

Array.filter()

Вы можете использовать filter для фильтрации элементов массива. Array.filter проверяет возвращаемое значение предоставленной функции. Если функция возвращает истину (true), она включает элемент в массив, в противном случае она удаляет элемент из создаваемого нового массива.

const filteredArray = originalElementArray.filter(element => !(element.id ==2 && element.idProduct == 3));

Попробуйте это:

const originalElementArray = [{
  "idProduct": 1,
  "id":1,
  "name": "MacBook Air M1 2020 (RAM 8GB | 256GB SSD)",
  "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
  "price": 20000000,
  "ram": "8GB",
  "color": "#fbecd3",
  "storage": "256GB"
},
{
  "idProduct": 2,
  "id":1,
  "name": "MacBook Air M1 2020 (RAM 16GB | 256GB SSD)",
  "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
  "price": 25000000,
  "ram": "16GB",
  "color": "#fbecd3",
  "storage": "256GB"
},
{
  "idProduct": 3,
  "id":1,
  "name": "MacBook Air M1 2020 (RAM 8GB | 512GB SSD)",
  "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
  "price": 23000000,
  "ram": "8GB",
  "color": "#fbecd3",
  "storage": "512GB"
},
{
  "idProduct": 4,
  "id":1,
  "name": "MacBook Air M1 2020 (RAM 16GB | 512GB SSD)",
  "image": "https://i.ibb.co/tzNm2jB/macbookairm1.png",
  "price": 28000000,
  "ram": "16GB",
  "color": "#fbecd3",
  "storage": "512GB"
},
{
  "idProduct": 1,
  "id":2,
  "name": "iPhone 13 Pro Max 256GB",
  "image": "https://i.ibb.co/9qFqM5g/iphone-13-pro-green-profile.png",
  "price": 30000000,
  "color": "green",
  "storage": "256GB"
},
{
  "idProduct": 2,
  "id":2,
  "name": "iPhone 13 Pro Max 128GB",
  "price": 28000000,
  "image": "https://i.ibb.co/9VGBNV6/iphone-13-pro-gold-profile.png",
  "color": "#fbecd3",
  "storage": "128GB"
},
{
  "idProduct": 3,
  "id":2,
  "name": "iPhone 13 Pro Max 256GB",
  "price": 30500000,
  "image": "https://i.ibb.co/9VGBNV6/iphone-13-pro-gold-profile.png",
  "color": "#fbecd3",
  "storage": "256GB"
},
{
  "idProduct": 4,
  "id":2,
  "name": "iPhone 13 Pro Max 128GB",
  "price": 27000000,
  "image": "https://i.ibb.co/9qFqM5g/iphone-13-pro-green-profile.png",
  "color": "green",
  "storage": "128GB"
}
]

const elementToBeRemoved = {
      "idProduct": 3,
      "id":2,
      "name": "iPhone 13 Pro Max 256GB",
      "price": 30500000,
      "image": "https://i.ibb.co/9VGBNV6/iphone-13-pro-gold-profile.png",
      "color": "#fbecd3",
      "storage": "256GB"
    }

const filteredArray = originalElementArray.filter(element => !(element.id === elementToBeRemoved.id && element.idProduct === elementToBeRemoved.idProduct));

console.info(filteredArray)

большое спасибо, я не думаю, что это простой вопрос :(( я сложный вопрос

Minh Quang 17.11.2022 03:13

@MinhQuang Фильтрация объектов по двум свойствам с использованием логических операторов совсем не сложная проблема. Прочтите документацию и хороший учебник , чтобы получить четкое представление об этих фундаментальных концепциях: выражения стрелочных функций , выражения и операторы, особенно «логические», и все, что уже было связано выше.

Sebastian Simon 17.11.2022 07:38

Другие вопросы по теме