将数据数组转换为具有属性的对象[重复]
Posted
技术标签:
【中文标题】将数据数组转换为具有属性的对象[重复]【英文标题】:Convert array of data into an object with properties [duplicate] 【发布时间】:2021-10-24 06:38:44 【问题描述】:如何将数组转换为具有属性的对象:
使用以下数据:
["Test Scenario ID", "Login-1"]
我想返回一个带有属性的对象:
1: "Test Scenario ID", 2: "Login-1" // desired result
使用以下内容,它将数据映射到单独的对象中,但我希望它是单个对象的属性,而不是对象数组:
row.values.map( (e,i) => return i: e )
[1: "Test Scenario ID", 2: "Login-1"] // the current result
【问题讨论】:
将数据更改为这种格式对您有何帮助?这似乎完全是多余的。 【参考方案1】:你可以用这个:
Object.assign(, ['a','b','c']); // 0:"a", 1:"b", 2:"c"
Object.assign()
方法从 一个或多个源对象到一个目标对象。它返回修改后的 目标对象。
你可以阅读更多关于它here on MDN
【讨论】:
【参考方案2】:一种选择是使用Object.fromEntries
将一组条目转换为对象。
const result = Object.fromEntries(
row.values.map((e, i) => [i, e])
);
另一种选择是获取多个对象的数组,然后通过Object.assign
将它们组合起来。
const result = Object.assign(
...row.values.map( (e,i) => (i: e))
);
【讨论】:
如果有未定义/空条目,我将如何使用 fromEntries?例如:null, 4, "查看附近的桶列表" 您想从结果对象中删除这些值吗?以上是关于将数据数组转换为具有属性的对象[重复]的主要内容,如果未能解决你的问题,请参考以下文章