Javascript 在2个数组中过滤
有两个数组Javascript 在2个数组中过滤,javascript,node.js,Javascript,Node.js,有两个数组tooarray和moarray我想要的是moarray中但不在tooarray中的所有元素的列表 var tooarray = [ { catalogue_id: 23480, parent_category_id: 23479, user_id: 28434, form_id: 4261, name: 'Other' }, { catalogue_id: 23481, parent_category_id: 23479, user
tooarray
和moarray
我想要的是moarray
中但不在tooarray
中的所有元素的列表
var tooarray = [
{ catalogue_id: 23480,
parent_category_id: 23479,
user_id: 28434,
form_id: 4261,
name: 'Other'
},
{ catalogue_id: 23481,
parent_category_id: 23479,
user_id: 28434,
form_id: 4261,
name: 'Tincture',
description: 'Tincture'
},
{ catalogue_id: 23482,
parent_category_id: 23479,
user_id: 28434,
form_id: 4261,
name: 'Cannabis',
description: 'Cannabis'
},
]
var moarray = [
'wedwewdwe',
'Other',
'Tincture',
'Cannabis'
];
var tInsertArray = moarray.filter(x =>{
tooarray.filter(y=>{
return x.indexOf(y.name) < 0;
})
});
预期产量
tInsertArray []
tInsertArray [wedwewdwe]
您可以使用
过滤器
和查找
var-tooarray=[{
目录编号:23480,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'其他'
},
{
目录编号:23481,
父类id:23479,
用户识别号:28434,
表格编号:4261,
名称:“酊剂”,
描述:“酊剂”
},
{
目录编号:23482,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'大麻',
描述:“大麻”
},
]
var moarray=[
“Wedwdwew”,
“其他”,
“酊剂”,
“大麻”
];
var tInsertArray=moarray.filter(x=>!tooarray.find(e=>e.name==x));
控制台日志(tInsertArray)代码>您可以使用过滤器
和查找
var-tooarray=[{
目录编号:23480,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'其他'
},
{
目录编号:23481,
父类id:23479,
用户识别号:28434,
表格编号:4261,
名称:“酊剂”,
描述:“酊剂”
},
{
目录编号:23482,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'大麻',
描述:“大麻”
},
]
var moarray=[
“Wedwdwew”,
“其他”,
“酊剂”,
“大麻”
];
var tInsertArray=moarray.filter(x=>!tooarray.find(e=>e.name==x));
控制台日志(tInsertArray)代码>获取名称,然后进行筛选
var tInsertArray = moarray.filter(x => {
return tooarray.map(y => y.name).includes(x) === false;
});
抓取名称,然后进行筛选
var tInsertArray = moarray.filter(x => {
return tooarray.map(y => y.name).includes(x) === false;
});
您在第一次回调中没有return
。这就是数组为空的原因。在第一次回调中没有返回。这就是数组为空的原因。您可以通过检查名称是否存在进行筛选
var tooarray=[{catalog\u id:23480,parent\u category\u id:23479,user\u id:28434,form\u id:4261,name:'Other'},{catalog\u id:23481,parent\u category\u id:23479,user\u id:28434,form\u id:4261,name:'Tincture',description:'Tincture'},{目录id:23482,父目录id:23479,用户id:28434,表格id:4261,名称:'大麻',描述:'大麻'},
moarray=['Wedwewdwwe','Other','Tinture','大麻'],
tInsertArray=moarray.filter(x=>!tooarray.some({name}=>name==x));
console.log(tInsertArray);
您可以通过检查名称是否存在进行筛选
var tooarray=[{catalog\u id:23480,parent\u category\u id:23479,user\u id:28434,form\u id:4261,name:'Other'},{catalog\u id:23481,parent\u category\u id:23479,user\u id:28434,form\u id:4261,name:'Tincture',description:'Tincture'},{目录id:23482,父目录id:23479,用户id:28434,表格id:4261,名称:'大麻',描述:'大麻'},
moarray=['Wedwewdwwe','Other','Tinture','大麻'],
tInsertArray=moarray.filter(x=>!tooarray.some({name}=>name==x));
console.log(tInsertArray);
从moarray
中筛选所有元素,其中toarray
中没有属性等于每个moarray
条目的元素:
让tooarray=[{
目录编号:23480,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'其他'
},
{
目录编号:23481,
父类id:23479,
用户识别号:28434,
表格编号:4261,
名称:“酊剂”,
描述:“酊剂”
},
{
目录编号:23482,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'大麻',
描述:“大麻”
},
]
让莫雷=[
“Wedwdwew”,
“其他”,
“酊剂”,
“大麻”
];
让tInsertArray=moarray.filter(x=>!tooarray.filter(y=>y.name==x.length)
console.log(tInsertArray)
从moarray
中筛选所有元素,其中toarray
中没有与每个moarray
条目具有name
属性的元素:
让tooarray=[{
目录编号:23480,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'其他'
},
{
目录编号:23481,
父类id:23479,
用户识别号:28434,
表格编号:4261,
名称:“酊剂”,
描述:“酊剂”
},
{
目录编号:23482,
父类id:23479,
用户识别号:28434,
表格编号:4261,
姓名:'大麻',
描述:“大麻”
},
]
让莫雷=[
“Wedwdwew”,
“其他”,
“酊剂”,
“大麻”
];
让tInsertArray=moarray.filter(x=>!tooarray.filter(y=>y.name==x.length)
console.log(tInsertArray)
什么不起作用?我没有得到预期的输出@ninascholzan,你得到了什么?[]数组@ninascholz什么不起作用可能重复?我没有得到预期的输出@ninascholzan,你得到了什么?[]数组@ninascholz可能重复的