将javascript数组从特定值映射为新键
所以我有这种数组将javascript数组从特定值映射为新键,javascript,lodash,Javascript,Lodash,所以我有这种数组 columnData:[ { title: 'Male Members', key: 'm_members' } { title: 'Female Members', key: 'f_members' } ] 我想把它变成这样 newColumn: { m_members: 'Male Members', f_members: 'Female Members } 如何使用javascript或lodash实现这一点 使用和 var
columnData:[
{
title: 'Male Members',
key: 'm_members'
}
{
title: 'Female Members',
key: 'f_members'
}
]
我想把它变成这样
newColumn: {
m_members: 'Male Members',
f_members: 'Female Members
}
如何使用javascript或lodash实现这一点 使用和
var columnData=[{title:'Male Members',key:'m_Members'},{title:'Female Members',key:'f_Members'}];
newColumn=columnData.reduce((a,{title,key})=>Object.assign(a,{[key]:title}),{});
console.log(newColumn)代码>使用和
var columnData=[{title:'Male Members',key:'m_Members'},{title:'Female Members',key:'f_Members'}];
newColumn=columnData.reduce((a,{title,key})=>Object.assign(a,{[key]:title}),{});
console.log(newColumn)
您可以使用对象执行此操作。分配并扩展语法…
const data=[{title:'Male Members',key:'m_Members'},{title:'Female Members',key:'f_Members'}]
const result=Object.assign({},…data.map(({title,key})=>({[key]:title}));
console.log(result)
您可以使用对象执行此操作。分配
并扩展语法…
const data=[{title:'Male Members',key:'m_Members'},{title:'Female Members',key:'f_Members'}]
const result=Object.assign({},…data.map(({title,key})=>({[key]:title}));
console.log(结果)
一个简单的for循环就可以做到这一点
一个简单的for循环就可以做到这一点。您可以使用forEach
方法在项目之间循环,然后使用键和值填充一个新对象,这些值是从columnData
获得的:
const columnData=[{title:'Male Members',key:'m_Members'},{title:'Female Members',key:'f_Members'}]
设newData={};
columnData.forEach(e=>{
newData[e.key]=e.title
})
console.log(newData)
您可以使用forEach
方法循环浏览项目,然后使用键和从columnData
获取的值填充新对象:
const columnData=[{title:'Male Members',key:'m_Members'},{title:'Female Members',key:'f_Members'}]
设newData={};
columnData.forEach(e=>{
newData[e.key]=e.title
})
console.log(newData)
wow这是最简单的方法,即使我是数组方面的初学者也能很快理解。wow这是最简单的方法,即使我是数组方面的初学者也能很快理解
const result = {};
for(const {title, key} of columnData)
result[key] = title;