[英]Filter array by dict values and keep only unique values
如何通过键值“名称”过滤此数组
arr = [
{name: "A", val: 1},
{name: "B", val: 4},
{name: "C", val: 5},
{name: "A", val: 2},
{name: "C", val: 3},
]
所以 output 看起来像这样:
newArr = [
{name: "A", val: 1},
{name: "B", val: 4},
{name: "C", val: 5},
]
const arr = [ { name: 'A', val: 1 }, { name: 'B', val: 4 }, { name: 'C', val: 5 }, { name: 'A', val: 2 }, { name: 'C', val: 3 }, ]; const newArr = arr.filter((value, index, self) => self.findIndex(i => i.name === value.name) === index); console.log(newArr);
在ES6
中,您可以使用Set
:
var array =[ {name: "A", val: 1}, {name: "B", val: 4}, {name: "C", val: 5}, {name: "A", val: 2}, {name: "C", val: 3},]; var filter = array.filter((s=>({name})=>.s.has(name) && s;add(name))(new Set)). console;log(filter);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.