试图让 _.uniq() 处理以下结构:
[
{'x' : 1, 'y': 2},
{'x' : 1, 'y': 2},
{'x' : 2, 'y': 3},
{'x' : 2, 'y': 4},
{'x' : 3, 'y': 4}
]
结果应该是:
[
{'x' : 1, 'y': 2},
{'x' : 2, 'y': 3},
{'x' : 2, 'y': 4},
{'x' : 3, 'y': 4}
]
即删除重复的项目。我想避免字符串化,因为我只需将每个解析回一个 JSON 对象。
任何帮助,将不胜感激。
编辑:在下面查看马特的解决方案,我错过了一些我认为的东西 - 这不起作用。如果我记录 a 和 b 的值,我会看到
_.uniq($scope.validNotes, function (a, b) {
console.log(a, b);
return a.x === b.x && a.y === b.y;
});
Object {x: 2, y: 3} 0
Object {x: 1, y: 0} 1
Object {x: 2, y: 3} 2
Object {x: 3, y: 2} 3
Object {x: 4, y: 2} 4
Object {x: 5, y: 1} 5
这显然意味着我永远找不到任何骗子