次の構造で _.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}
]
つまり、重複するアイテムが削除されます。stringify は避けたいと思います。なぜなら、それぞれを解析して 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
これは明らかに、私がだましを見つけることは決してないことを意味します