📅  最后修改于: 2023-12-03 15:05:39.653000             🧑  作者: Mango
在 TypeScript 中,有时候需要合并对象的属性,使得新的对象具有原始对象的所有属性,但是某些属性可能需要被改变,修改,或新添加一些属性。
我们可以使用以下方法实现合并对象属性:
interface IUser {
name: string;
age?: number;
gender?: string;
}
// 定义一个对象
const user1: IUser = {
name: 'Alice',
age: 25,
};
// 合并对象
const mergedUser = { ...user1, gender: 'female' };
console.log(mergedUser);
// { name: 'Alice', age: 25, gender: 'female' }
// 修改对象
const modifiedUser = { ...user1, age: 30 };
console.log(modifiedUser);
// { name: 'Alice', age: 30 }
// 添加新属性
const newUser = { ...user1, address: 'Beijing' };
console.log(newUser);
// { name: 'Alice', age: 25, address: 'Beijing' }
Object.assign()
除了扩展操作符({...}),我们还可以使用Object.assign()
方法来合并对象:
const user1: IUser = {
name: 'Alice',
age: 25,
};
const mergedUser = Object.assign({}, user1, { gender: 'female' });
console.log(mergedUser);
// { name: 'Alice', age: 25, gender: 'female' }
在 TypeScript 中,我们可以使用{ ... }
或 Object.assign()
合并对象属性,使得新的对象具有原始对象的所有属性,但是某些属性可能需要被改变,修改,或新添加一些属性。这是一个非常普遍的技巧,可能会在项目中频繁使用。