问题在于该函数未更改返回相同的数组
var result2 = _.reject(self.arraytot2, ({ Ecuid }) =>
_.uniqBy(self.arraytot2, {Ecuid})) ;
//the array is the following
self.arraytot2 = [{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19}]
答案 0 :(得分:0)
直接使用_.uniqBy()
,并传递唯一密钥:
const arraytot2 = [{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":11},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19},{"Ecuid":19}];
const result = _.uniqBy(arraytot2, 'Ecuid');
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.js"></script>