话不多说直接上代码:
/**
*
* @param obj 过滤的对象
* @param keys 过滤的属性数组
* @returns
*/
export const filterData = (obj: any, keys: any[]) => {
return Object.keys(obj).reduce((newData: any, key: any) => {
if (!keys.includes(key)) {
newData[key] = obj[key];
}
return newData;
}, {});
};
测试一下:
const list = {
name: '123',
age: 12,
sex: 'woman',
};
console.log(filterData(list, ['age'])); //结果:{name: '123', sex: 'woman'}
console.log(filterData(list, ['age', 'sex'])); //结果:{name: '123'}
成功过滤掉对象中不需要的属性~~~如果有更好的方法,欢迎一起交流学习~