1.去重的方法為:
array_diff(a, b) { for (var i = 0; i < b.length; i++) { for (var j = 0; j < a.length; j++) { if (a[j].id == b[i].id) { a.splice(j, 1); j = j - 1; } } } return a; }
2.測試方法:
function array_diff(a, b) { for (var i = 0; i < b.length; i++) { for (var j = 0; j < a.length; j++) { if (a[j].id == b[i].id) { a.splice(j, 1); j = j - 1; } } } return a; } var arr1=[ {name:"父節點1",id:1}, {name:"父節點2",id:2}, {name:"父節點3",id:3}, {name:"父節點4",id:4}, ]; var arr2=[ {name:"父節點1",id:1}, {name:"父節點2",id:2}, ] array_diff(arr1, arr2)
返回的數據為:
[ {name:"父節點3",id:3}, {name:"父節點4",id:4} ]