跳转至

解构赋值修改对象键值

要将对象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对象中的sourceNodeIdtargetNodeId属性解构出来,并且分别重命名为parentIdchildId。然后创建了一个新的对象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对象就会具有新的键名。