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
结合使用。