javaScript中数组的破坏对象
大家好,我有一系列物体,我想破坏它们。 以下是数组的摘录。
[
{
"Area": "Werk Produktivität [%] - Target",
"Jan": 86.21397507374327,
"Feb": 86.0570021973368,
"Mrz": 88.70898346258058,
"Apr": 85.29801908413164,
"May": 85.07431241640211
},
{
"Area": "Werk Produktivität [%] - Actual",
"Jan": 84.17054711398421,
"Feb": 83.80826026601528,
"Mrz": 84.11553769971036,
"Apr": 83.76460916731,
"May": 82.69773876702813
}
]
我现在尝试实现的目标是将数组分为以下内容:
[
{
"Area": "Werk Produktivität [%] - Target",
"Jan": 86.21397507374327,
},
{
"Area": "Werk Produktivität [%] - Target",
"Feb": 86.0570021973368,
},
{
"Area": "Werk Produktivität [%] - Target",
"Mrz": 88.70898346258058,
},
{
"Area": "Werk Produktivität [%] - Target",
"Apr": 85.29801908413164,
},
{
"Area": "Werk Produktivität [%] - Target",
"May": 85.07431241640211,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Jan": 84.17054711398421,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Feb": 83.80826026601528,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Mrz": 84.11553769971036,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Apr": 83.76460916731,
},
{
"Area": "Werk Produktivität [%] - Actual",
"May": 82.69773876702813
}
我正在考虑使用... REST
参数以下方式,但我只得到了阵列的最后5个项目。请注意,OBJ位于数组对象的摘录之上。
const fn = ({ Area, ...rest }) =>
Object.values(rest)
.map(Month => ({
Area,
Month
}))
})
const result = fn(obj)
Hi Guys I have an array of objects, which I want to destruct. The following is an excerpt of the array.
[
{
"Area": "Werk Produktivität [%] - Target",
"Jan": 86.21397507374327,
"Feb": 86.0570021973368,
"Mrz": 88.70898346258058,
"Apr": 85.29801908413164,
"May": 85.07431241640211
},
{
"Area": "Werk Produktivität [%] - Actual",
"Jan": 84.17054711398421,
"Feb": 83.80826026601528,
"Mrz": 84.11553769971036,
"Apr": 83.76460916731,
"May": 82.69773876702813
}
]
What I now try to achieve is splitting the array into the following :
[
{
"Area": "Werk Produktivität [%] - Target",
"Jan": 86.21397507374327,
},
{
"Area": "Werk Produktivität [%] - Target",
"Feb": 86.0570021973368,
},
{
"Area": "Werk Produktivität [%] - Target",
"Mrz": 88.70898346258058,
},
{
"Area": "Werk Produktivität [%] - Target",
"Apr": 85.29801908413164,
},
{
"Area": "Werk Produktivität [%] - Target",
"May": 85.07431241640211,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Jan": 84.17054711398421,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Feb": 83.80826026601528,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Mrz": 84.11553769971036,
},
{
"Area": "Werk Produktivität [%] - Actual",
"Apr": 83.76460916731,
},
{
"Area": "Werk Produktivität [%] - Actual",
"May": 82.69773876702813
}
I was thinking of using the ...rest
parameter the following way but I only get the last 5 items of the array. Please note that obj is above excerpt of the object of array.
const fn = ({ Area, ...rest }) =>
Object.values(rest)
.map(Month => ({
Area,
Month
}))
})
const result = fn(obj)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您可以使用
Reled
和Object.entries
获得与以下方式相同的结果you can use
reduce
andObject.entries
for getting result same as :您可以使用函数
array.prototype.reduce
,其中函数array.prototype.map
来构建所需的对象。You can use the function
Array.prototype.reduce
and inside of it the functionArray.prototype.map
to build the desired object.不确定
obj
在result = fn(obj)
在此处做什么。我认为您在数组上调用MAP
,并在结果的2D数组中获取第一项。您只需要在数组上使用flatmap
fn
作为回调。或
fn
需要进行一些调整。由于您还需要对象的键Not sure what
obj
inresult = fn(obj)
does here. I think you are callingmap
on the array and getting the first item in the resulting 2D array. You just need to callflatMap
on the array withfn
as the callback.or
Also the
fn
needs to be tweaked a bit. You need to get the entires of therest
object since you need the key of the object as well希望这对您有帮助!!!
Hope this helps you!!!
您只需使用 。
演示:
You can simply achieve that by using
Destructuring assignment
.Demo :