如何删除嵌套在两个数组中的对象?

编程入门 行业动态 更新时间:2024-10-13 16:22:06

如何删除<a href=https://www.elefans.com/category/jswz/34/1771299.html style=嵌套在两个数组中的对象?"/>

如何删除嵌套在两个数组中的对象?

我希望有一个函数来接收类别的名称和该类别之一的名称,并返回没有该项目的整个对象,我该怎么做?

这是到目前为止,我设法通过两个循环找到了要删除的项目,但是我不知道如何删除它。

const removeItem = (categoryName, itemName) => {
    const data = loadAll()
    data.categories.forEach(category => {
        if(category.name === categoryName){
            category.items.forEach(item => {
                if(item.name === itemName){
                    // DELETE
                }
            });
        }
    });
}

对象:

{
   "categories":[
      {
         "name":"Carne",
         "items":[
            {
               "name":"Bitoque",
               "price":10
            },
            {
               "name":"Bife",
               "price":8
            },
            {
               "name":"Frango Grelhado",
               "price":6
            }
         ]
      },
      {
         "name":"Peixe",
         "items":[
            {
               "name":"Dourada",
               "price":12
            },
            {
               "name":"Sardinhas",
               "price":8
            }
         ]
      },
      {
         "name":"Entradas",
         "items":[
            {
               "name":"Couvert",
               "price":2
            }
         ]
      },
      {
         "name":"Sumos",
         "items":[

         ]
      }
   ]
}
回答如下:

一种执行此操作的方法是仅filter items,例如

const removeItem = (categoryName, itemName) => {
     const data = loadAll()
     data.categories.forEach(category => {
          if(category.name === categoryName){
              category.items = category.items.filter(item => item.name !== itemName);
          }
     });
}

更多推荐

如何删除嵌套在两个数组中的对象?

本文发布于:2024-05-07 05:36:19,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1754543.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:嵌套   组中   个数   对象

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!