帮我写一段js代码。根据对象属性uid的值相同,合并两个对象列表。
时间: 2023-03-26 22:01:59 浏览: 129
好的,以下是代码:
function mergeObjects(objList1, objList2) {
let mergedList = [];
objList1.forEach(obj1 => {
let matchingObj = objList2.find(obj2 => obj2.uid === obj1.uid);
if (matchingObj) {
mergedList.push(Object.assign({}, obj1, matchingObj));
} else {
mergedList.push(obj1);
}
});
objList2.forEach(obj2 => {
let matchingObj = objList1.find(obj1 => obj1.uid === obj2.uid);
if (!matchingObj) {
mergedList.push(obj2);
}
});
return mergedList;
}
这段代码会将两个对象列表合并成一个,如果两个对象的uid属性值相同,则会将它们合并成一个新的对象。
阅读全文