将别名变量分配给新对象

时间:2019-06-07 05:16:19

标签: javascript node.js ecmascript-6 ecmascript-2017 ecmascript-2018

我们如何将别名键分配给

这样的新对象
var obj1 = { c: 1 }; var obj2= ({ f: c } = obj1 ); console.log(obj2);

OR

var obj1 = { c: 1 }; var obj2= { f: c } = obj1 ; console.log(obj2);

返回{c: 1}而不是{f: 1}

如何实现呢?

我不想这样做

var obj1 = {c:1}; var {f:c} = obj1; const obj2 = {f}; console.log(obj2);

1 个答案:

答案 0 :(得分:0)

在这种情况下,分配比销毁更简单:

var obj1 = { c: 1 }; 

var obj2= { f: obj1.c }; 

console.log(obj2);

如果您确实必须使用解构,则可以使用IIFE:

var obj1 = { c: 1 }; 

var obj2= (({ c: f }) => ({ f }))(obj1); 

console.log(obj2);