Dynamic Key Assignment
Tue Dec 17 2024 06:25:37 GMT+0000 (Coordinated Universal Time)
Saved by @davidmchale
const array = [
{
"name": "Qualification Level",
"categoryDefinitions": [
{
"facetName": "Qualification Level",
"data": "qualLevel",
"label": null,
"subCategories": [],
"queryStringCategoryExtraPart": "qualLevel",
"metadataClass": "qualLevel",
"allQueryStringParamNames": [
"f.Qualification Level|qualLevel"
],
"queryStringParamName": "f.Qualification Level|qualLevel"
}
],
"selectionType": "MULTIPLE",
"constraintJoin": "OR",
"facetValues": "FROM_SCOPED_QUERY_WITH_FACET_UNSELECTED",
"order": [
"CATEGORY_DEFINITION_ORDER",
"LABEL_ASCENDING"
],
"allQueryStringParamNames": [
"f.Qualification Level|qualLevel"
]
},
{
"name": "Delivery Mode",
"categoryDefinitions": [
{
"facetName": "Delivery Mode",
"data": "deliveryMode",
"label": null,
"subCategories": [],
"queryStringCategoryExtraPart": "deliveryMode",
"metadataClass": "deliveryMode",
"allQueryStringParamNames": [
"f.Delivery Mode|deliveryMode"
],
"queryStringParamName": "f.Delivery Mode|deliveryMode"
}
],
"selectionType": "MULTIPLE",
"constraintJoin": "OR",
"facetValues": "FROM_SCOPED_QUERY_WITH_FACET_UNSELECTED",
"order": [
"CATEGORY_DEFINITION_ORDER",
"LABEL_ASCENDING"
],
"allQueryStringParamNames": [
"f.Delivery Mode|deliveryMode"
]
}
]
const getValues = array.reduce((total, item) => {
const name = item?.name;
const value = item?.allQueryStringParamNames[0];
if (name && value) {
total[name] = value;
}
return total;
}, {});
total[name] = value; anthing in [] is dynamic



Comments