如何使用javascript以以下格式合并两个对象数组

如何使用javascript以以下格式合并两个对象数组,javascript,jquery,Javascript,Jquery,预期产出: 设数组1=[{ 问题编号:5e52b55330bb2cee102b9a39, 注:名称:, 预填充值:prasanna }, { 问题编号:5e52b56b30bb2cee102b9a3f, 注:手机号码, prefillValue:null }, { 问题编号:5e52b58230bb2cee102b9a42, 注意:代理电子邮件, prefillValue:null }, { 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, prefillValue:n

预期产出:

设数组1=[{ 问题编号:5e52b55330bb2cee102b9a39, 注:名称:, 预填充值:prasanna }, { 问题编号:5e52b56b30bb2cee102b9a3f, 注:手机号码, prefillValue:null }, { 问题编号:5e52b58230bb2cee102b9a42, 注意:代理电子邮件, prefillValue:null }, { 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, prefillValue:null }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, prefillValue:null }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, prefillValue:null } ] 设array2=[{ 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, 预填充值:skk@gmail.com }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, 预填充值:34 }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, 预填充值:金奈 } ] 设array3=[…array1,…array2]; 控制台logarray3 设数组1=[{ 问题编号:5e52b55330bb2cee102b9a39, 注:名称:, 预填充值:prasanna }, { 问题编号:5e52b56b30bb2cee102b9a3f, 注:手机号码, prefillValue:null }, { 问题编号:5e52b58230bb2cee102b9a42, 注意:代理电子邮件, prefillValue:null }, { 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, prefillValue:null }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, prefillValue:null }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, prefillValue:null } ] 设array2=[{ 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, 预填充值:skk@gmail.com }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, 预填充值:34 }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, 预填充值:金奈 } ] 设array3=[…array1,…array2];
console.logarray3过滤器方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素

可以通过这种方式删除重复的关键点

array3 = [{
        questionId: "5e52b55330bb2cee102b9a39",
        note: "Name",
        prefillValue: "prasanna"
    },

    {
        questionId: "5e52b56b30bb2cee102b9a3f",
        note: "Mobile Number",
        prefillValue: null
    }, {
        questionId: "5e52b58230bb2cee102b9a42",
        note: "Agent Email",
        prefillValue: null
    }, {
        questionId: "5e52b55e30bb2cee102b9a3c",
        note: "Email",
        prefillValue: null
    }, {
        questionId: "5e52b55e30bb2cee102b9a3c",
        note: "Email",
        prefillValue: "skk@gmail.com"
    }, {
        questionId: "5e52c39730bb2cee102b9a47",
        note: "Agent ID",
        prefillValue: "34"
    },
    {
        questionId: "5e54dbdd30bb2c6018f488ca",
        note: "Location",
        prefillValue: "Chennai"
    }
]

可以找到参考

过滤器方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素

可以通过这种方式删除重复的关键点

array3 = [{
        questionId: "5e52b55330bb2cee102b9a39",
        note: "Name",
        prefillValue: "prasanna"
    },

    {
        questionId: "5e52b56b30bb2cee102b9a3f",
        note: "Mobile Number",
        prefillValue: null
    }, {
        questionId: "5e52b58230bb2cee102b9a42",
        note: "Agent Email",
        prefillValue: null
    }, {
        questionId: "5e52b55e30bb2cee102b9a3c",
        note: "Email",
        prefillValue: null
    }, {
        questionId: "5e52b55e30bb2cee102b9a3c",
        note: "Email",
        prefillValue: "skk@gmail.com"
    }, {
        questionId: "5e52c39730bb2cee102b9a47",
        note: "Agent ID",
        prefillValue: "34"
    },
    {
        questionId: "5e54dbdd30bb2c6018f488ca",
        note: "Location",
        prefillValue: "Chennai"
    }
]
可以找到引用

您可以使用Object.assign将属性从一个对象复制到另一个对象

常数数组1=[{ 问题编号:5e52b55330bb2cee102b9a39, 注:名称:, 预填充值:prasanna }, { 问题编号:5e52b56b30bb2cee102b9a3f, 注:手机号码, prefillValue:null }, { 问题编号:5e52b58230bb2cee102b9a42, 注意:代理电子邮件, prefillValue:null }, { 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, prefillValue:null }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, prefillValue:null }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, prefillValue:null } ] 常数数组2=[{ 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, 预填充值:skk@gmail.com }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, 预填充值:34 }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, 预填充值:金奈 } ] const array3=array1.mapo=>Object.assigno,array2.finda=>a.questionId==o.questionId; console.logarray3您可以使用Object.assign将属性从一个对象复制到另一个对象

常数数组1=[{ 问题编号:5e52b55330bb2cee102b9a39, 注:名称:, 预填充值:prasanna }, { 问题编号:5e52b56b30bb2cee102b9a3f, 注:手机号码, prefillValue:null }, { 问题编号:5e52b58230bb2cee102b9a42, 注意:代理电子邮件, prefillValue:null }, { 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, prefillValue:null }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, prefillValue:null }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, prefillValue:null } ] 常数数组2=[{ 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, 预填充值:skk@gmail.com }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, 预填充值:34 }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, 预填充值:金奈 } ] const array3=array1.mapo=>Object.assigno,array2.finda=>a.questionId==o.questionId; 控制台logarray3 设数组1=[{ 问题编号:5e52b55330bb2cee102b9a39, 注:名称:, 预填充值:prasanna }, { 问题编号:5e52b56b30bb2cee102b9a3f, 注:手机号码, prefillValue:null }, { 问题编号:5e52b58230bb2cee102b9a42, 注意:代理电子邮件, prefillValue:null }, { 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, prefillValue:null }, { 问题编号:5e52c39730bb2c ee102b9a47, 注意:代理ID, prefillValue:null }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, prefillValue:null } ] 设array2=[{ 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, 预填充值:skk@gmail.com }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, 预填充值:34 }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, 预填充值:金奈 } ] 让array3=array1.concat…array2; 控制台logarray3 设数组1=[{ 问题编号:5e52b55330bb2cee102b9a39, 注:名称:, 预填充值:prasanna }, { 问题编号:5e52b56b30bb2cee102b9a3f, 注:手机号码, prefillValue:null }, { 问题编号:5e52b58230bb2cee102b9a42, 注意:代理电子邮件, prefillValue:null }, { 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, prefillValue:null }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, prefillValue:null }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, prefillValue:null } ] 设array2=[{ 问题编号:5e52b55e30bb2cee102b9a3c, 注:电邮, 预填充值:skk@gmail.com }, { 问题编号:5e52c39730bb2cee102b9a47, 注意:代理ID, 预填充值:34 }, { 问题编号:5E54DBD30BB2C6018F488CA, 注:地点:, 预填充值:金奈 } ] 让array3=array1.concat…array2;
console.LogArray3这不是OP描述的对象数组。它应该与问题中提供的对象一起工作,我需要从第一个数组中删除重复的QuestionID,然后您应该先筛选它们merging@Prasannawatson看看这不是OP描述的对象数组。它应该与问题中提供的对象一起工作,我需要从第一个数组中删除重复的QuestionID,然后您应该先筛选它们merging@Prasannawatson看一看,您是在问如何合并数组而不以重复结束吗?您是在问如何合并数组而不以重复结束吗?
let array1 = [{
    questionId: "5e52b55330bb2cee102b9a39",
    note: "Name",
    prefillValue: "prasanna"
},

{
    questionId: "5e52b56b30bb2cee102b9a3f",
    note: "Mobile Number",
    prefillValue: null
},
{
    questionId: "5e52b58230bb2cee102b9a42",
    note: "Agent Email",
    prefillValue: null
},
{
    questionId: "5e52b55e30bb2cee102b9a3c",
    note: "Email",
    prefillValue: null
},
{
    questionId: "5e52c39730bb2cee102b9a47",
    note: "Agent ID",
    prefillValue: null
},
{
    questionId: "5e54dbdd30bb2c6018f488ca",
    note: "Location",
    prefillValue: null
}
]

var uniq = {}
var arrFiltered = arrays1.filter(obj => !uniq[obj.questionId] && (uniq[obj.questionId] = true));
console.log('Filtered Array:', arrFiltered)