-2

what is the best way to convert this

['RUNNING WATTS', '12,500', 'PEAK AMPS @ 120V', '125.00', 'RUNNING AMPS @ 120V', '100.00']

to:

{
'RUNNING WATTS': '12,500',
'PEAK AMPS @ 120V': '125.00', 
'RUNNING AMPS @ 120V': '100.00'
}

thanks in advance

  • 4
    What have you tried so far? Where are you stuck? How would you define "best"? – Nico Haase Aug 25 '22 at 09:38
  • im trying to make a table from array which look me not possible (by using single dimension array) ,so now I want to convert it first into object and than make table from it – Zubair Khan Aug 25 '22 at 09:46
  • This question has already been answered at this link. link --> https://stackoverflow.com/questions/4215737/convert-array-to-object – Khattak01 Aug 25 '22 at 09:46

2 Answers2

1

This is an easy way to do it only if your array structure looks like what you provided though. Is it the best way? Who am I to judge.

const array = ['RUNNING WATTS', '12,500', 'PEAK AMPS @ 120V', '125.00', 'RUNNING AMPS @ 120V', '100.00'];
let result = {}
result[array[0]] = array[1]
result[array[2]] = array[3]
result[array[4]] = array[5]
console.log(result);
holydragon
  • 6,158
  • 6
  • 39
  • 62
0

You could use a simple reduce method which would work with an even bigger array:


const arr = ['RUNNING WATTS', '12,500', 'PEAK AMPS @ 120V', '125.00', 'RUNNING AMPS @ 120V', '100.00'];
arr.reduce((acc, val, idx, ref) => {
  if (idx % 2 == 0) {
    acc[val] = ref[idx + 1]
  }
  return acc
}, {})
Dezzley
  • 1,463
  • 1
  • 13
  • 19