Javascript 使用对象键值对的数组值将数组转换为对象
我有一个数组:Javascript 使用对象键值对的数组值将数组转换为对象,javascript,arrays,Javascript,Arrays,我有一个数组: const arr = [ 'name=Jon', 'weapon=sword', 'hair=shaggy' ] 我想把它转换成这样一个对象: const obj = { name: 'Jon', weapon: 'sword', hair: 'shaggy' } 我尝试过用=分割数组,以获得键和值,然后映射新数组并将这些值发送到空对象,但没有得到正确的键 const split = arr.map( el => el.split('=') ) let obj = {
const arr = [ 'name=Jon', 'weapon=sword', 'hair=shaggy' ]
我想把它转换成这样一个对象:
const obj = { name: 'Jon', weapon: 'sword', hair: 'shaggy' }
我尝试过用=
分割数组,以获得键和值,然后映射新数组并将这些值发送到空对象,但没有得到正确的键
const split = arr.map( el => el.split('=') )
let obj = {};
split.map( el => {
const key = el[0];
const val = el[1];
obj.key = val;
}
)
obj
返回为{key:'shaggy'}
通常,要将数组转换为对象,最合适的方法是。reduce
:
const arr=['name=Jon'、'wear=剑'、'hair=shaggy'];
const obj=arr.reduce((a,str)=>{
常量[key,val]=str.split('=');
a[键]=val;
返回a;
}, {});
控制台日志(obj)
通常,要将数组转换为对象,最合适的方法是。reduce
:
const arr=['name=Jon'、'wear=剑'、'hair=shaggy'];
const obj=arr.reduce((a,str)=>{
常量[key,val]=str.split('=');
a[键]=val;
返回a;
}, {});
控制台日志(obj)代码>您可以使用
const arr=['name=Jon'、'wear=剑'、'hair=shaggy']
const obj=Object.fromEntries(arr.map(v=>v.split('='))
console.log(obj)
您可以使用
const arr=['name=Jon'、'wear=剑'、'hair=shaggy']
const obj=Object.fromEntries(arr.map(v=>v.split('='))
console.log(obj)