我的演示应用程序中有两个数组。数组1具有内容的国家,另一个是列表国家。因此,如果该国家/地区未包含在国家/地区数组中,我希望从第一列中删除国家/地区。我把我的数组值放在下面,
var continent = [
{
"continent":"Europe",
"country":["Albania", "Andorra", "UK", "Ireland"]
},
{
"continent":"Asia",
"country":["Armenia", "Cambodia", "China", "Cyprus"]
}
]
var selectedCountries = ["Albania", "Andorra", "Armenia"];
输出
var result = [
{
"continent":"Europe",
"country":["Albania", "Andorra"]
},
{
"continent":"Asia",
"country":["Armenia"]
}
]
答案 0 :(得分:0)
如果您正在修改原始数组,可以执行以下操作:
forEach and `filter` would do the job.
continent
数组。 country
数组的每个对象,请保留selectedCountries
集合中存在的对象。
var continent = [
{
"continent":"Europe",
"country":["Albania", "Andorra", "UK", "Ireland"]
},
{
"continent":"Asia",
"country":["Armenia", "Cambodia", "China", "Cyprus"]
}
];
var selectedCountries = ["Albania", "Andorra", "Armenia"];
continent.forEach(function (c,i) {
c.country = c.country.filter(function (v,i) {
return selectedCountries.includes(v);
});
});
console.log(continent);