Home > Software design >  Dynamic JSON from Array in JS
Dynamic JSON from Array in JS

Time:09-29

I have one Array like this,

let array = [
    {
    label_name: 'text1',
    setting_value: 'val1'
  },
  {
    label_name: 'text4',
    setting_value: 'val5'
  },
  {
    label_name: 'text6',
    setting_value: 'val8'
  },
];

Now I need JSON Object from this Array like this,

{
    "text1":"val1",
    "text4":"val5",
    "text6":"val8"
}

CodePudding user response:

const output = array.reduce((acc, cur) => {
  acc[cur.label_name] = cur.setting_value; 
  return acc;
}, {})

Output:

{ text1: 'val1', text4: 'val5', text6: 'val8' }

CodePudding user response:

You should use .reduce()

let array = [
  { label_name: 'text1', setting_value: 'val1' },
  { label_name: 'text4', setting_value: 'val5' },
  { label_name: 'text6', setting_value: 'val8' }
  ];

const transformed = array.reduce((acc, {
  label_name,
  setting_value
}) => {
  acc[label_name] = setting_value;
  return acc
}, {});

console.log(JSON.stringify(transformed, null, 2));

  • Related