假设有一个对象看起来像这样:
const before = {
keyToBeRemoved: { // <-- remove the key
name1: "value 1", // <-- keep the property
name2: "value 2", // <-- keep the property
name3: "value 3", // <-- keep the property
},
name4: "value 4",
name5: "value 5",
name6: "value 6",
};
我想删除顶级密钥,但也希望保留它的所有属性。最终结果应该是这样的:
const after = {
name1: "value 1",
name2: "value 2",
name3: "value 3",
name4: "value 4",
name5: "value 5",
name6: "value 6",
};
你能告诉我用什么模式来对对象进行这样的操作吗?
一种(多种(可能的解决方案是使用排列语法。
首先通过";分割";键中要删除的对象以及所有其他属性。然后使用所有其他属性和删除的键的属性构造一个新对象。
const before = {
keyToBeRemoved: { // <-- remove the key
name1: "value 1", // <-- keep the property
name2: "value 2", // <-- keep the property
name3: "value 3", // <-- keep the property
},
name4: "value 4",
name5: "value 5",
name6: "value 6",
};
const { keyToBeRemoved, ...withoutKeyToBeRemoved } = before;
const after = { ...keyToBeRemoved, ...withoutKeyToBeRemoved }
console.log(after)
.as-console-wrapper { max-height: 100% !important; top: 0; }