比方说 我们有一个数组和一个像这样的对象-
const arr = ['a', 'd', 'f']; const obj = { "a": 5, "b": 8, "c": 4, "d": 1, "e": 9, "f": 2, "g": 7 };
我们需要编写一个函数,该函数接受对象和数组,并过滤掉不是数组元素的所有对象属性。因此,输出应仅包含3个属性,即:“ a”,“ d”和“ e”。
让我们为该函数编写代码-
const arr = ['a', 'd', 'f']; const obj = { "a": 5, "b": 8, "c": 4, "d": 1, "e": 9, "f": 2, "g": 7 }; const filterObject = (obj, arr) => { Object.keys(obj).forEach((key) => { if(!arr.includes(key)){ delete obj[key]; }; }); }; filterObject(obj, arr); console.log(obj);
输出结果
控制台中的输出将为-
{ a: 5, d: 1, f: 2 }