【发布时间】:2018-11-01 20:03:16
【问题描述】:
假设...
let A = [{ x:'x', y:'y' }, { x:'x', y:'y' }];
我知道我可以将此数组转换为一个新数组,并像这样重命名 y 属性...
A.map(o => ({ v: o.y }));
// [{ v:'y' }, { v:'y' }]
而且我可以使用扩展来获取所有现有属性以及一个新的、经过转换的属性...
A.map(o => ({ ...o, ...{ v: o.y } }));
// [{ x:'x', y:'y', v:'y' }, { x:'x', y:'y', v:'y' }]
但我想知道是否有一种优雅的方法可以简单地将y 属性重命名为v。所以这就是我想要的。
// [{ x:'x', v:'y' }, { x:'x', v:'y' }]
我知道我可以在我的胖箭头函数上使用一个函数块,添加一个v 属性,并删除y 属性,但这很麻烦。我正在寻找优雅的东西。
【问题讨论】:
-
如何量化“优雅”?
-
您使用 ecmascript-6 标记了问题。请注意,“传播属性”不是 ES6 的一部分。
-
优雅 = 一看就知道 ;)
标签: javascript arrays ecmascript-6