在JavaScript中过滤对象数组
假设我们分别有两个文字和对象数组-
const source = [1, 2, 3 , 4 , 5]; const cities = [{ city: 4 }, { city: 6 }, { city: 8 }];
我们需要编写一个包含这两个数组的JavaScript函数。我们的函数应该创建一个新数组,其中包含对象数组中所有包含这些元素的元素,这些对象的“city”键值存在于文字数组中。
示例
让我们写代码-
const source = [1, 2, 3 , 4 , 5]; const cities = [{ city: 4 }, { city: 6 }, { city: 8 }]; const filterByLiterals = (objArr, literalArr) => { const common = objArr.filter(el => { return literalArr.includes(el['city']); }); return common; }; console.log(filterByLiterals(cities, source));
输出结果
控制台中的输出将是-
[ { city: 4 } ]