0

我们如何将别名键分配给新对象,例如

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}.

怎样才能做到这一点?

我不想这样做

变量 obj1 = { c: 1 }; var { f: c } = obj1 ; 常量 obj2 = {f}; 控制台.log(obj2);

4

1 回答 1

1

在这种情况下,赋值比解构更简单:

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);

于 2019-06-07T05:19:51.097 回答