Javascript 将字符串数组转换为具有参数和值的对象

Javascript 将字符串数组转换为具有参数和值的对象,javascript,Javascript,我有下一个字符串数组: ['val1=123','val2=456'] 如何将其拆分为具有参数和值的对象 { val1: 123, val2: 456, } 让arr=['val1=123','val2=456'] 让对象={} for(设i=0;i{ 设x=i.split('='); obj[x[0]]=parseInt(x[1]); }); 控制台日志(obj) const recordStrings=['val1=123','val2=456'] const record=O

我有下一个字符串数组:

['val1=123','val2=456']
如何将其拆分为具有参数和值的对象

{
  val1: 123,
  val2: 456,
}
让arr=['val1=123','val2=456']
让对象={}
for(设i=0;i
让obj={};
设arr=['val1=123','val2=456'];
arr.forEach(i=>{
设x=i.split('=');
obj[x[0]]=parseInt(x[1]);
});
控制台日志(obj)
const recordStrings=['val1=123','val2=456']
const record=Object.fromEntries(
recordStrings.map(str=>str.split('='))
)

console.log(record)
拆分数组中的字符串并将数组转换为对象:


const res=['val1=123','val2=456'];
const result=Object.fromEntries(res.map(x=>{
常数[l,r]=x.split('=');
返回[l,+r];
}));
控制台日志(结果)
让arr=['val1=123','val2=456'];
arr.forEach(str=>{
让arrStr=str.split('=');
评估(arrStr[0]+'='+arrStr[1]+';');
})
控制台日志(val1,val2)您可以尝试使用reduce方法,将数组转换为任何其他数据类型(如对象、字符串、数字)非常有用。
const arr=['val1=123','val2=456'];
const items=arr.reduce((总计,项)=>{
常量[键,值]=项.拆分('=');
如果(关键){
总计[键]=值
}
返回总数;
}, {})

控制台日志(项目)您是否尝试过和/或?res.map(x=>x.split('=');返回我的阵列这里有几十个副本。你在挣扎什么?这非常相似:@Ted将该输出保存到变量
res2
或类似变量。然后可以使用
Object.fromEntries(res2)
constres=['val1=123','val2=456'];res.map(x=>x.split('=');结果:[“val1”,“123”,“vall2”,“456”],
Object.fromEntries
这太棒了
Object.fromEntries
这太棒了
Array#reduce
非常强大,这就是为什么它在传达意图方面很差的原因。为了清晰起见,我建议将
Array#map
Object.fromEntries
结合使用。