我有一个old_data
对象数组变量:
let old_data = [
{
value: 'item',
text: "do_not_import",
custom: null,
updates : true,
removes : true,
},
{
value: 'additional_image',
text: "additional_image_mapped",
custom: null,
updates : true,
removes : true,
},
{
value: 'brand',
text: "brand_mapped",
custom: null,
updates : true,
removes : true,
},
];
字符串
现在,我将过滤此变量,其中text不是do_not_import
let filter_data = old_data.filter( ( item ) => {
return item.text != 'do_not_import';
});
现在,我得到了这个结果:
[
{
value: 'additional_image',
text: 'additional_image_mapped',
custom: null,
updates: true,
removes: true
},
{
value: 'brand',
text: 'brand_mapped',
custom: null,
updates: true,
removes: true
}
]
好了,现在我有了new_data
变量:
let newData = [
{
value: 'item',
text: "do_not_import",
custom: null,
updates : true,
removes : true,
},
{
value: 'additional_image',
text: "do_not_import",
custom: null,
updates : true,
removes : true,
},
{
value: 'brand',
text: "do_not_import",
custom: null,
updates : true,
removes : true,
},
{
value: 'new',
text: "do_not_import",
custom: null,
updates : true,
removes : true,
},
];
现在,我想合并new_data
和filter_data
变量,该变量应返回filter_data
中的所有数据和new_data
中的所有数据,但对于new_data
,它应返回那些键value
与filter_data
变量中的键不同的数据。
这意味着我想要的输出是:
[
{
value: 'additional_image',
text: 'additional_image_mapped',
custom: null,
updates: true,
removes: true
},
{
value: 'brand',
text: 'brand_mapped',
custom: null,
updates: true,
removes: true
},
{
value: 'item',
text: "do_not_import",
custom: null,
updates : true,
removes : true,
},
{
value: 'new',
text: "do_not_import",
custom: null,
updates : true,
removes : true,
}
]
3条答案
按热度按时间yjghlzjz1#
这个应该可以-
vtwuwzda2#
这应该行得通。
常量组合数据=新数据.减少((账户,元素)=〉账户.一些(e =〉e.值===元素.值)?账户:[... acc,元素],过滤数据);
slwdgvem3#