【发布时间】:2023-04-09 03:37:01
【问题描述】:
有没有办法将object解构或克隆到另一个object,并在此过程中重命名它的键?
示例:
let getUser = () => { return {first: "Radio", last: "Reve"} }
let {first: firstName, last: lastName} = getUser()
let o = {firstName: firstName, lastName: lastName} // This is the line I don't wanna have to write
有没有一种简单的方法可以将结果存储在一个对象中,而不是两个不同的变量,firstName 和 lastName?
我从服务器收到一个带有 10 个键的对象,我想只选择 2 个键并重命名这些键,没有额外的库,也没有以一致的方式使用本机的特殊函数。
【问题讨论】:
-
var copy = Object.assign({},getUser()) -
不是真正的重复。我添加了 cmets 来阐明我想要什么
-
@Radioreve 它仍然是重复的。看第一个答案:“也就是说,没有办法“从对象解构为对象”,或者“从对象中挑选为对象”,只能从对象解构为变量。”
-
@str 确实不错。所以这是不可能的……悲伤的脸
-
您可以将该行缩短为
{firstName, lastName},但实际上除了显式构造对象别无他法
标签: javascript object ecmascript-6 clone destructuring