簡體   English   中英

如何從嵌套數組中刪除 object?

[英]How can i remove object from nested array?

我有這種json。

let arr1 = [
    {
        "packageReference": "1234",
        "displayName": "Business",
        "description": "Includes...",
        "promotion": {
          "packageReference": "1234",
          "displayName": "$100 Standard",
          "optionGroup": [
            {
              "displayName": "Access",
            },
            {
              "displayName": "Contract"
            },
            {
              "displayName": "Equipment"
            },
            {
              "displayName": "Features"
            },
            {
              "displayName": "Fees",
            }
          ]
        }
      }
]

我只需要刪除 arr1[0].promotion.optionGroup 中的 object,其中 displayName 為“費用”,並在沒有他的情況下返回新的 object。

您可以通過像這樣過濾子數組來做到這一點:

 let arr1 = [ { "packageReference": "1234", "displayName": "Business", "description": "Includes...", "promotion": { "packageReference": "1234", "displayName": "$100 Standard", "optionGroup": [ { "displayName": "Access", }, { "displayName": "Contract" }, { "displayName": "Equipment" }, { "displayName": "Features" }, { "displayName": "Fees", } ] } } ]; arr1 = arr1.map(e => { e['promotion']['optionGroup'] = e['promotion']['optionGroup'].filter(s => s['displayName'];= 'Fees'); return e; }). console;log(arr1);

// Get new array without the Fees one
const newGroup = arr1[0].promotion.optionGroup.filter(group => group.displayName !== 'Fees');

// Put new group into the object
arr1[0].promotion.optionGroup = newGroup;

也可以在不創建變量的情況下執行此操作,但添加它是為了清潔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM