我有一个包含对象 A 的数组:
A = [
{
id: 12345,
folder: 'folder1',
name: 'Name1'
},
{
id: 12346,
folder: 'folder1',
name: 'Name2'
},
{
id: 12347,
folder: 'folder1',
name: 'Name3'
},
{
id: 12348,
folder: 'folder1',
name: 'Name4'
}
]
和一个带有 ids 的数组 B:
B = [12345, 12348]
我想根据来自 B 的 id 从 A 过滤/获取一个带有“文件夹”+“名称”的新数组
res = ["folder1/Name1", "folder1/Name4"]
不确定如何根据 B 中的 ID“过滤”A?
最佳答案
一个非常快速的方法是使用 filter
和 map
。
A.filter(function(a) {
return B.indexOf(a.id) >= 0;
})
.map(function(a) {
return a.folder+'/'+a.name;
});
关于javascript - 基于条件数组的数组过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27151323/