Javascript: 如何将数组["a=1", "b=2"] 转为对象?
Javascript: How to convert array ["a=1", "b=2"] into an object?
最好的转换方式是什么:
user = ['Name:Marry', 'Age:24', 'Gender:Female']
至
user = { 'Name':'Marry', 'Age':'24', 'Gender':'Female' }
一行解决方案:
const result = Object.assign({}, ...user.map(item => item.split(':')).map(item => ({ [item[0]]: item[1]})))
user = ['Name:Marry', 'Age:24', 'Gender:Female']
const userObj = {}
for(item of user) {
const [key, value] = item.split(":")
userObj[key] = value
}
console.log(userObj)
在这里你想把一个数组转换成一个单一的值(这里是一个对象),因为这种更声明的方式是使用reduce方法。在这里,我给了一个空对象作为累加器的初始值,并且在每次迭代时它都会添加键值对。
const result = user.reduce((acc, curr) => {
const [key, value] = curr.split(':');
acc[key] = value;
return acc;
}, {});
希望对您有所帮助。
最好的转换方式是什么:
user = ['Name:Marry', 'Age:24', 'Gender:Female']
至
user = { 'Name':'Marry', 'Age':'24', 'Gender':'Female' }
一行解决方案:
const result = Object.assign({}, ...user.map(item => item.split(':')).map(item => ({ [item[0]]: item[1]})))
user = ['Name:Marry', 'Age:24', 'Gender:Female']
const userObj = {}
for(item of user) {
const [key, value] = item.split(":")
userObj[key] = value
}
console.log(userObj)
在这里你想把一个数组转换成一个单一的值(这里是一个对象),因为这种更声明的方式是使用reduce方法。在这里,我给了一个空对象作为累加器的初始值,并且在每次迭代时它都会添加键值对。
const result = user.reduce((acc, curr) => {
const [key, value] = curr.split(':');
acc[key] = value;
return acc;
}, {});
希望对您有所帮助。