【问题标题】:How to do object restructuring in ES6?如何在 ES6 中进行对象重组?
【发布时间】:2015-08-04 14:27:46
【问题描述】:
有没有办法在一个语句中做到这一点?
var {a:c, b} = {a:2, b:3}; // es6 destructuring
var d = {b, c} // es6 shorthand properties
我想在单个语句中将 {a:2, b:3} 转换为 {b:3, c:2}。
【问题讨论】:
标签:
javascript
ecmascript-6
destructuring
【解决方案1】:
不要使用解构和速记属性,只需按照你的意愿构造文字即可:
var input = {a:2, b:3};
var d = {b:input.b, c:input.a}; // single statement
或者使用立即调用的箭头函数 (IIAF):
var d = (({a:c, b}) => ({b, c}))(input);
【解决方案2】:
我想在单个语句中将 {a:2, b:3} 转换为 {b:3, c:2}。
你只需要交换属性:
const {b, a:c} = {a:2, b:3}
b // 3
c // 2