For the life of me I cannot figure this out.
I need to take a 2 dimensional array and create an array of objects with a specified keyname in another array. How would I go about doing this?
I'm trying return an object like this:
needed result:
[
{
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'
}
...
]
Current code:
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)