要保持其余部分不变的情况下更新一个嵌套对象,可以使用对象的扩展运算符(...)和对象的属性解构来实现。下面是一个代码示例:
const obj = {
a: 1,
b: {
c: 2,
d: 3
}
};
// 更新嵌套对象的属性
const updatedObj = {
...obj,
b: {
...obj.b,
c: 4
}
};
console.log(updatedObj);
在上面的示例中,我们要更新 obj
对象中嵌套对象 b
的属性 c
。为了保持其余部分不变,我们首先使用扩展运算符 ...obj
复制了 obj
对象的所有属性。然后,我们使用对象的属性解构 ...obj.b
复制了嵌套对象 b
的所有属性,并更新了属性 c
的值为 4。最后,我们将更新后的对象赋值给 updatedObj
变量,并打印出来。
输出结果为:
{
a: 1,
b: {
c: 4,
d: 3
}
}
可以看到,在更新嵌套对象属性时,我们只更新了属性 c
的值,而保持了其余部分不变。