[英]Remove/Filter object on basis of key-value combination from object
如何根據其中一個屬性的特定值從大型 object 中過濾掉 object。
defaultSettings = {
'header1': {
key: '00_02',
element: {
'test1': '',
},
elementName: 'footer'
},
'enabled': {},
'header2': [
{
key: '',
value: {
msg1: {},
msg2: 'message2',
},
elementName: 'unwanted-element1'
}
],
'header3': {
info: '',
headline: ''
},
};
我想從defaultSettings
中刪除 object where elementName: 'unwanted-element1'
我正在嘗試類似的東西
for (let key of Object.keys(defaultSettings)) {
if(key === 'header2'){
if(key['elementName'] == 'unwanted-element1' ){
//delete that particular object.
}
}
}
console.log(defaultSettings);
Output 預期:
{
'header1': {
key: '00_02',
element: {
'test1': '',
},
elementName: 'footer'
},
'enabled': {},
'header2': [],
'header3': {
info: '',
headline: ''
},
}
請提出更好的方法來實現這一目標。
defaultSettings['header2'] = defaultSettings['header2'].filter(prop => prop.elementName != 'unwanted-element1');
所以在這里我通過不包括unwanted-element1
1來過濾header2
並將結果再次分配給defaultSettings
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.