<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>www.vevb.com js数组中对象去重</title></head><body><script> var tmp = [ { "id": 1, "magicId": "111111111111111111", "username": "longzhoufeng", }, { "id": 2, "magicId": "333333333333333333", "username": "longzhoufeng", }, { "id": 3, "magicId": "555555555555555555", "username": "longzhoufeng", }, { "id": 4, "magicId": "666666666666666666", "username": "longzhoufeng", } ] var result = []; var full = {}; for(var i = 0; i < tmp.length; i++) { var aaa = tmp[i].magicId; var bbb = tmp[i].id; if(!full[aaa]) { if(!full[bbb]) { var obj = {} obj.id = tmp[i].id; obj.magicId = tmp[i].magicId; result.push(obj) full[bbb] = true; } full[aaa] = true; } } console.log(full) console.log(result)</script></body></html>