如何将各种对象组成并摆脱重复属性?

发布于 2025-01-24 00:15:32 字数 1303 浏览 3 评论 0原文

我有以下数组,我想摆脱

 "additionalTabs": {
        "Cost Tab 2": [
            {
                "entityID": 1,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 3,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2469,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 1
            }
        ],
        "cost tab 4": [
            {
                "entityID": 3867,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 3982,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 4500,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            }
        ]
    }

预期的新数组中的重复项,我想摆脱重复的属性,例如tabid和sequenceno,在“对象”下的成本标签2和成本片4。任何帮助都将不胜感激。谢谢

I have below array and I want to get rid of duplicates

 "additionalTabs": {
        "Cost Tab 2": [
            {
                "entityID": 1,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 3,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2469,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 1
            }
        ],
        "cost tab 4": [
            {
                "entityID": 3867,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 3982,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 4500,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            }
        ]
    }

In expected new array I want to get rid of repeated attributes like tabID and sequenceNo under objects Cost Tab 2 and cost tab 4. Any help will be appreciated. Thank you

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

痴情换悲伤 2025-01-31 00:15:32

尝试以下操作:

// Your original data
const additionalTabs = {
        "Cost Tab 2": [
            {
                "entityID": 1,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 3,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2469,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 1
            }
        ],
        "cost tab 4": [
            {
                "entityID": 3867,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 3982,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 4500,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            }
        ]
    }

// Example code to run through your object and delete the unwanted properties
const result = Object.entries(additionalTabs)
    .reduce((prev, item)=>({
    ...prev,
    [item[0]]:item[1].map(tabItem=>{
      const newTabItem = {
        ...tabItem,
      }
      delete newTabItem.tabID
      delete newTabItem.sequenceNo
      return newTabItem
    })
  }),{})

result

结果:

{
  'Cost Tab 2': [
    { entityID: 1, isApproved: 0 },
    { entityID: 2, isApproved: 0 },
    { entityID: 3, isApproved: 0 },
    { entityID: 2469, isApproved: 1 }
  ],
  'cost tab 4': [
    { entityID: 3867, isApproved: 0 },
    { entityID: 3982, isApproved: 0 },
    { entityID: 4500, isApproved: 0 }
  ]
}

Try this:

// Your original data
const additionalTabs = {
        "Cost Tab 2": [
            {
                "entityID": 1,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 3,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 0
            },
            {
                "entityID": 2469,
                "tabID": 2,
                "sequenceNo": 1,
                "isApproved": 1
            }
        ],
        "cost tab 4": [
            {
                "entityID": 3867,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 3982,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            },
            {
                "entityID": 4500,
                "tabID": 53,
                "sequenceNo": 4,
                "isApproved": 0
            }
        ]
    }

// Example code to run through your object and delete the unwanted properties
const result = Object.entries(additionalTabs)
    .reduce((prev, item)=>({
    ...prev,
    [item[0]]:item[1].map(tabItem=>{
      const newTabItem = {
        ...tabItem,
      }
      delete newTabItem.tabID
      delete newTabItem.sequenceNo
      return newTabItem
    })
  }),{})

result

The result:

{
  'Cost Tab 2': [
    { entityID: 1, isApproved: 0 },
    { entityID: 2, isApproved: 0 },
    { entityID: 3, isApproved: 0 },
    { entityID: 2469, isApproved: 1 }
  ],
  'cost tab 4': [
    { entityID: 3867, isApproved: 0 },
    { entityID: 3982, isApproved: 0 },
    { entityID: 4500, isApproved: 0 }
  ]
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文