javascript - Node : removing duplicate objects from array

标签 javascript arrays node.js

我有一个对象数组,我想删除重复的项目。下面讨论这个主题,但是 ES6 解决方案似乎不适用于对象: Unique values in an array

var myArray=[{fname:"Bob", sname:"Brown"},{fname:"Jill",sname:"White"},{fname:"Bob", sname:"Brown"}];
var unique = myArray.filter((v, i, a) => a.indexOf(v) === i);
/*
[ { fname: 'Bob', sname: 'Brown' },
  { fname: 'Jill', sname: 'White' },
  { fname: 'Bob', sname: 'Brown' } ]
*/
let unique = [...new Set(myArray)];
/*
[ { fname: 'Bob', sname: 'Brown' },
  { fname: 'Jill', sname: 'White' },
  { fname: 'Bob', sname: 'Brown' } ]
*/

最佳答案

使用 lodash 中的 _.uniqBy 或 _.uniqWith ;)

const _ = require('lodash');

const myArray=[{fname:"Bob", sname:"Brown"},{fname:"Jill",sname:"White"},{fname:"Bob", sname:"Brown"}];

console.log(_.uniqWith(myArray, _.isEqual));

关于javascript - Node : removing duplicate objects from array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41632450/

相关文章:

php - 如何在php中映射一个数组

ios根据比较结果将数组分成几个部分

arrays - 使用 STArray 的 Haskell 并行计算

javascript - bExpress bodyparser 未正确配置

node.js - 使用 rxjs 通过 nodejs request.get 发出批量请求

javascript - Uncaught ReferenceError : model is not defined

javascript - 移动设备的基本 jquery 切换菜单无法正常工作

windows - 在 Windows 上的 NodeJS 上使用 path.join 创建 URL

javascript - 选择某个字符后的1个字符

javascript - 改变 React 状态的首选方法是什么?