【发布时间】:2020-04-22 19:08:06
【问题描述】:
对于我的一生,我无法弄清楚这一点。
我需要一个二维数组并在另一个数组中创建一个具有指定键名的对象数组。我该怎么做呢?
我正在尝试返回这样的对象:
需要的结果:
[
{
map: 'map-1',
user: 'user-1',
type: 'type-1',
name: 'name-1',
street: 'street-1' ,
city: 'city-1'
},
{
map: 'map-2',
user: 'user-2',
type: 'type-2',
name: 'name-2',
street: 'street-2' ,
city: 'city-2'
}
...
]
当前代码:
var collection = [
['map-1', 'map-2', 'map-3', 'map-4', 'map-5', 'map-6'],
['user-1', 'user-2', 'user-3', 'user-4', 'user-5', 'user-6'],
['type-1', 'type-2', 'type-3', 'type-4', 'type-5', 'type-6'],
['name-1', 'name-2', 'name-3', 'name-4', 'name-5', 'name-6'],
['street-1', 'street-2', 'street-3', 'street-4', 'street-5', 'street-6'],
['city-1', 'city-2', 'city-3', 'city-4', 'city-5', 'city-6']
];
var keys = [
"map", "user", 'type', "name", "street", 'city'
]
const arrayColumn = (arr, n) => arr.map((x, i) => {
return {[keys[i]]:x[n]}
});
let x = keys.map((x, i)=>{
return arrayColumn(collection, i)
})
console.log(x)
【问题讨论】:
标签: javascript arrays lodash