解构赋值修改对象键值
要将对象a
中的sourceNodeId
改为parentId
,以及targetNodeId
改为childId
,你可以使用ES6的解构赋值和对象字面量属性简写特性,代码如下:
var a = {
"sourceNodeId": "2e20fbfd20a44510b560f069a174f107",
"targetNodeId": "b6ca57e22f154bb08d9908aa97dc8138",
};
// 使用 ES6 的解构赋值和对象字面量属性简写来重命名键
var { sourceNodeId: parentId, targetNodeId: childId } = a;
// 创建一个新对象,包含重命名的键
var b = {
parentId,
childId
};
console.log(b);
这段代码首先通过解构赋值将a
对象中的sourceNodeId
和targetNodeId
属性解构出来,并且分别重命名为parentId
和childId
。然后创建了一个新的对象b
,并且将这两个新的变量作为属性加入到这个新对象中。此时,b
对象就包含了改名后的键。如果你想要直接在原对象上进行修改,可以这样做:
var a = {
"sourceNodeId": "2e20fbfd20a44510b560f069a174f107",
"targetNodeId": "b6ca57e22f154bb08d9908aa97dc8138",
};
// 重命名对象的键
a.parentId = a.sourceNodeId;
delete a.sourceNodeId;
a.childId = a.targetNodeId;
delete a.targetNodeId;
console.log(a);
这段代码将sourceNodeId
的值赋给了新键parentId
,然后删除了原来的sourceNodeId
键。同样的操作也对targetNodeId
进行了处理,以达到重命名的目的。最终,a
对象就会具有新的键名。