JSFiddle - React, Tailwind, and code Playground
by JCapriotti
JavaScript
var array = [
{ keySegment1: 1, keySegment2: 1, Description: 'apple' },
{ keySegment1: 2, keySegment2: 1, Description: 'orange' },
{ keySegment1: 3, keySegment2: 3, Description: 'banana' }
];
var expected = {
'1-1': { keySegment1: 1, keySegment2: 1, Description: 'apple' },
'2-1': { keySegment1: 2, keySegment2: 1, Description: 'orange' },
'3-3': { keySegment1: 3, keySegment2: 3, Description: 'banana' }
};
function convertToAssociativeArray (array, keyFunc) {
var ret = {};
for (var x in array) {
var key = keyFunc(array[x]);
ret[key] = array[x];
}
return ret;
}
var result = convertToAssociativeArray(array, function (item) {
return item.keySegment1 + '-' + item.keySegment2;
});
console.log(JSON.stringify(result));
console.log(result['1-1'].Description);