2
Array.filter()を使用して一意のid
をname
と戻すにはどうすればよいですか?オブジェクトの配列から一意の値をフィルタリングする
私のシナリオは、私がオブジェクトの配列を持っていることを研究しているソリューションと少し異なります。私が見つけたすべての例には、単一の値のフラットな配列が含まれています。
var unique = data.filter(
function (x, i) {
return data[i].id.indexOf(x.id) === i
});
事前に感謝
data=[
{id: 555, name: "Sales", person: "Jordan" },
{id: 555, name: "Sales", person: "Bob" },
{id: 555, name: "Sales", person: "John" },
{id: 777, name: "Accounts Payable", person: "Rhoda" },
{id: 777, name: "Accounts Payable", person: "Harry" },
{id: 888, name: "IT", person: "Joe" },
{id: 888, name: "IT", person: "Jake" },
];
うん、それはそれです!私はforループのために行っていたが、私はフィルターが一番だと思う。 –
なぜ私は結論にすぐにジャンプするのか分かりません。私は検索しましたが、私のシナリオに最適なソリューションは見つかりませんでした。 –
私は、このアプローチが関数内で何も返さないため、フィルタ関数を実際には使用しないので、forEachはより良いと思います。 – theva