let arr = [ { name: '张三', age:'30' }, { name: '李四', age:'15' }, { name: '王五', age:'20' }, { name: '张三', age:'18' }, { name: '王五', age:'16' } ]; let obj = {}; for(let i = 0; i < arr.length; i++) { for(let j = 1; j < arr.length; j++) { arr[i].age = arr[i].name == arr[j].name ? arr[j].age : arr[i].age; } }; arr = arr.reduce((item, next) => { obj[next.name] ? '' : obj[next.name] = true && item.push(next); return item; }, []); console.log(arr)