Use spread operator (...) to clone and merge objects
const user = { name: 'Alice', age: 30 };
const updatedUser = { ...user, age: 31 };
console.log(updatedUser); // { name: 'Alice', age: 31 }const defaults = {
theme: 'light',
fontSize: 14,
language: 'en'
};
const userSettings = {
fontSize: 16,
language: 'fr'
};
// Merge: user settings override defaults
const settings = { ...defaults, ...userSettings };
console.log(settings);const deepClone = JSON.parse(JSON.stringify(obj));
// Use for simple objects without functions or datesconst config = {
...baseConfig,
...(production && { debug: false })
};Avoid Object.assign() for simple cases
// DON'T DO THIS (older way, still works but spread is cleaner)
var merged = Object.assign({}, obj1, obj2);✓ Works in all modern browsers (ES2018+)