var arr2 = [{ id: 1, name: '小明' }, { id: 2, name: '盧本偉' }, { id: 3, name: 'PDD' }, { id: 4, name: '大司馬' }] var arr1 = [{ id: 1, car: '奔馳' }, { id: 2, car: '寶馬' }, { id: 3, car: '勞斯' }, { id: 4, car: '大眾' }] // 方法如下 const combined = arr2.reduce((acc, cur) => { const target = acc.find(e => e.id === cur.id); if (target) { Object.assign(target, cur); } else { acc.push(cur); } return acc; }, arr1); console.log(combined)