Javascript 将数组对象转换为对象的对象

Javascript 将数组对象转换为对象的对象,javascript,arrays,reactjs,javascript-objects,array.prototype.map,Javascript,Arrays,Reactjs,Javascript Objects,Array.prototype.map,目前我的数据如下所示 { numberOne: [{ timestamp: 3829383, value: 20323.23 }], numberTwo: [{ timestamp: 2382342, value: 120912.1 }] ... } 我想把它转换成这种格式 { numberOne: { timestamp: 3829383, valu

目前我的数据如下所示

{
    numberOne: [{
        timestamp: 3829383,
        value: 20323.23
    }],
    numberTwo: [{
        timestamp: 2382342,
        value: 120912.1
    }]
    ...
}
我想把它转换成这种格式

{
    numberOne: {
        timestamp: 3829383,
        value: 20323.23
    },
    numberTwo: {
        timestamp: 2382342,
        value: 120912.1
    }
    ...
}
我尝试了
对象。分配
映射()
过滤器()
。。。似乎什么都不管用


任何关于我如何完成这项工作的想法都会非常有帮助

您可以通过使用将输入对象转换为所需的输出:

const数据={
numberOne:[{时间戳:3829383,值:20323.23}],
numberTwo:[{时间戳:2382342,值:120912.1}]
};
const result=Object.entries(数据)
.reduce((r[k[v]])=>(r[k]=v,r),{});
控制台日志(结果)
。作为控制台包装{max height:100%!important;top:0;}
您可以使用
for(obj中的var键)
循环,并为每个键设置所需的值:

var obj={
numberOne:[{时间戳:3829383,值:20323.23}],
numberTwo:[{时间戳:2382342,值:120912.1}]
};
log(“Before-->”,obj);
for(obj中的var键){
obj[key]=obj[key][0];//从每个数组中获取项0
}

log(“之后-->”,obj)枚举对象中的条目,取出每个数组中的第一个项,并使用键和项创建一个对象

const data={numberOne:[{时间戳:3829383,值:20323.23}],numberTwo:[{时间戳:2382342,值:120912.1}]}
常量转换=(arr)=>
Object.entries(arr.reduce)((acc[k[v]])=>(acc[k]=v,acc),{})

log(transform(data))
您可以使用重新生成对象来迭代(这将为您提供一个键和值的数组):

const数据={
号码:[{
时间戳:3829383,
价值:20323.23
}],
编号二:[{
时间戳:2382342,
价值:120912.1
}]
}
//抓取条目并迭代每个条目
//从数组中解构出键和值
const out=Object.entries(data).reduce((acc,[key,value])=>{
//在初始对象(acc)上设置关键点,然后设置
//要作为值数组的第一个元素的值
acc[键]=值[0];
//返回下一次迭代的初始对象(acc)
返回acc;
}, {});

控制台。注销您的数据不能像第一个示例那样。您的输入数据看起来不是有效的JS代码。您的数据不能像这样
[时间戳:3829383,值:20323.23]
。它错了,你确定它看起来像那样吗?前者既不是有效的json,也不是有效的js对象。抱歉,是的,你们都是正确的-我已经修改了代码。