在javascript中选择一些元素怎么样?
给定这样的数组:在javascript中选择一些元素怎么样?,javascript,Javascript,给定这样的数组: a = [{id:1, name:'a'}, {id:2, name:'b'}, {id:3, name:'c'}, {id:4, name:'d'}, {id:5, name:'e'}]; b = ['a','d']; c = [1,4]; 我如何从a和b得到c?我想从name中获取id。谢谢你。一个选项是使用.map和.find: const a=[{id:1,名称:'a'},{id:2,名称:'b'},{id:3,名称:'c'},{id:4,名称:'d'},{id
a = [{id:1, name:'a'}, {id:2, name:'b'}, {id:3, name:'c'}, {id:4, name:'d'}, {id:5, name:'e'}];
b = ['a','d'];
c = [1,4];
我如何从a和b得到c?我想从name中获取id。谢谢你。一个选项是使用
.map
和.find
:
const a=[{id:1,名称:'a'},{id:2,名称:'b'},{id:3,名称:'c'},{id:4,名称:'d'},{id:5,名称:'e'}];
常数b=['a','d'];
常量c=b.map(findName=>
a、 查找(({name})=>name==findName)
身份证件
);
控制台日志(c)代码>一个选项是使用.map
和.find
:
const a=[{id:1,名称:'a'},{id:2,名称:'b'},{id:3,名称:'c'},{id:4,名称:'d'},{id:5,名称:'e'}];
常数b=['a','d'];
常量c=b.map(findName=>
a、 查找(({name})=>name==findName)
身份证件
);
控制台日志(c)代码>
循环通过b数组并尝试在数组a
中找到它,如果存在,将id推入c
循环通过b数组并尝试在数组a
中找到它,如果存在,将id推入c
const a=[{id:1,名称:'a'},{id:2,名称:'b'},
{id:3,名称:'c'},{id:4,名称:'d'},{id:5,名称:'e'}];
常数b=['a','d'];
常数c=a.filter(函数(项){
返回b.indexOf(item.name)!=-1
}).map(功能(项目){
返回项目id
});
控制台日志(c)代码>
const a=[{id:1,名称:'a'},{id:2,名称:'b'},
{id:3,名称:'c'},{id:4,名称:'d'},{id:5,名称:'e'}];
常数b=['a','d'];
常数c=a.filter(函数(项){
返回b.indexOf(item.name)!=-1
}).map(功能(项目){
返回项目id
});
控制台日志(c)代码>您可以使用这种方式
var d = a.filter((item)=>{
return b.indexOf(item.name) >= 0;
});
var c = d.map((item) => {
return item.id;
});
// Result = [1,4]
你可以用这种方式
var d = a.filter((item)=>{
return b.indexOf(item.name) >= 0;
});
var c = d.map((item) => {
return item.id;
});
// Result = [1,4]
请试试这个
a=[{id:1,名称:'a'},
{id:2,名称:'b'},
{id:3,名称:'c'},
{id:4,名称:'d'},
{id:5,名称:'e'}]
b=['a','d'];
c=[]
a、 map(res=>{if(b.includes(res.name)){c.push(res.id)});
警报(c)
请尝试此警报
a=[{id:1,名称:'a'},
{id:2,名称:'b'},
{id:3,名称:'c'},
{id:4,名称:'d'},
{id:5,名称:'e'}]
b=['a','d'];
c=[]
a、 map(res=>{if(b.includes(res.name)){c.push(res.id)});
警报(c)