Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从属性在另一个数组中找不到的数组中删除对象_Javascript_Arrays - Fatal编程技术网

Javascript 从属性在另一个数组中找不到的数组中删除对象

Javascript 从属性在另一个数组中找不到的数组中删除对象,javascript,arrays,Javascript,Arrays,给定一组特殊对象,如下所示: var allSpecials = []; //Yet to be populated 填充时,数组中的每个特殊对象如下所示 e、 g 例如,我想删除allSpecials数组中的元素0,因为在以下数组中找不到它的类别“特别早餐” specialCategories = ["Happy Hour", "Dinner Special", "Lunch Special"]; 我该怎么办 非常感谢您可以使用lodash和函数 const categorySpecial

给定一组特殊对象,如下所示:

var allSpecials = []; //Yet to be populated
填充时,数组中的每个特殊对象如下所示

e、 g

例如,我想删除allSpecials数组中的元素0,因为在以下数组中找不到它的类别“特别早餐”

specialCategories = ["Happy Hour", "Dinner Special", "Lunch Special"];
我该怎么办

非常感谢

您可以使用lodash和函数

const categorySpecialMap = keyBy(allSpecials, 'category');
const targetSpecials = values(pick(categorySpecialMap, specialCategories));

我相信您要做的是删除在
specialCategories
数组中找不到其类别的元素

给定一个数组:

const allSpecial=[{地址:“曼努考路250号”,类别:“早餐特色”,坐标:“so”,cusine_类型:“日本”,设施类型:“餐厅”},{地址:“曼努考路557号”,类别:“晚餐特色”,坐标:“so”,cusine_类型:“意大利”,设施类型:“酒吧”},{地址:“333”,类别:“x”}]
和另一个阵列:

const specialCategories=[“早餐特色”、“欢乐时光”、“晚餐特色”、“午餐特色”];
您可以在specialCategories数组中不包含类别的情况下筛选
allSpecials
数组,如下所示:

allSpecials.filter(x=>specialCategories.includes(x.category))

如果要仅使用匹配的对象动态填充
特殊类别
,可以执行以下操作:

myArrayOfObjects.forEach(e=>{
if(特殊类别,包括(e类)){
所有特价商品。推送(e)
}
})

情况并非如此,您必须先发布一些代码/工作,然后只有我们可以帮助您。
const categorySpecialMap = keyBy(allSpecials, 'category');
const targetSpecials = values(pick(categorySpecialMap, specialCategories));