I have a multidimensional array as below (columns) and need it transformed into array of objects forming a grouped hierarchal structure to construct a table header.
Each values has to be nested in the order of index and also grouped. Any pointers how this can be achieved ?
var columns = [
["Price", "Australia", "Melbourne", "Comfort Hotel & Spa"],
["Price", "Costa Rica", "Tamarindo", "Summer Isle Hotel"],
["Stars", "Fiji", "Suva", "Crescent Resort1"],
["Stars", "Fiji", "Suva", "Crescent Resort2"],
];
//need it to be transformed into structure like this
var transformedArray = [{
Header: 'Price',
columns: [{
Header: 'Australia',
columns: [{
Header: 'Melbourne',
columns: [{
Header: 'Comfort Hotel & Spa',
value: 'Price-Australia-Melbourne-Comfort Hotel & Spa'
}]
}]
}, {
Header: 'Costa Rica',
columns: [{
Header: 'Tamarindo',
columns: [{
Header: 'Summer Isle Hotel',
value: 'Price-Costa Rica-Tamarindo-Summer Isle Hotel'
}]
}]
}]
}, {
Header: 'Stars',
columns: [{
Header: 'Fiji',
columns: [{
Header: 'Suva',
columns: [{
Header: 'Crescent Resort1',
value: 'Stars-Fiji-suva-Crescent Resort1'
},
{
Header: 'Crescent Resort2',
value: 'Stars-Fiji-suva-Crescent Resort2'
}
]
}]
}]
}]