我正在寻找一种方式来过滤地图的价值,而不是重点。我有一个在我的角度应用如下建模的数据集:是否可以在Typescript中按值过滤Map?
{
"85d55e6b-f4bf-47bb-a988-78fdb9650ef0": {
is_deleted: false,
public_email: "[email protected]",
id: "85d55e6b-f4bf-47bb-a988-78fdb9650ef0",
modified_at: "2017-09-26T15:35:06.853492Z",
social_url: "https://facebook.com/jamesbond007",
event_id: "213b01de-da9e-4d19-8e9c-c0dae63e019c",
visitor_id: "c3c232ff-1381-4776-a7f2-46c177ecde1c",
},
}
这些条目的键是一样的项值id
领域。
鉴于其中几个条目,我想过滤并返回一个new Map()
,其中只包含给定的event_id
的条目。是这样的数组我只想做到以下几点:
function example(eventId: string): Event[] {
return array.filter((item: Event) => item.event_id === eventId);
}
从本质上讲,我试图复制的Array.prototype.map()
功能 - 只需在地图上,而不是一个数组。
我愿意用Lodash如果这将有助于以更简洁的方式实现这一目标,因为它已经在我的项目中可用。
哪里'Map'你过滤?我看到一个“对象”。 [他们是不一样的东西(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map#Objects_and_maps_compared)。 – jcalz