在前端开发中,有时我们需要从对象中删除多余的属性,以减小数据的大小或避免将不必要的数据发送到服务器。这可以通过创建一个新的对象,并从原始对象中选择性地复制所需的属性来实现。以下是一个简单的JavaScript函数,该函数接受一个对象和一个包含所需属性名称的数组,然后返回一个新对象,其中仅包含这些属性:
function removeUnwantedProperties(obj, wantedProperties) {
const newObj = {};
for (const key of wantedProperties) {
if (obj.hasOwnProperty(key)) {
newObj[key] = obj[key];
}
}
return newObj;
}
你可以这样使用这个函数:
const person = {
name: 'John Doe',
age: 30,
city: 'New York',
country: 'USA',
password: 'secret123'
};
const wantedProps = ['name', 'age', 'city'];
const updatedPerson = removeUnwantedProperties(person, wantedProps);
console.log(updatedPerson);
// 输出: { name: 'John Doe', age: 30, city: 'New York' }
在这个例子中,removeUnwantedProperties
函数创建了一个新的对象 newObj
,并从 person
对象中复制了 name
、age
和 city
属性。password
和 country
属性被排除在外,因为它们不在 wantedProps
数组中。