Home > Blockchain >  How can I parse a stringified array of arrays (JavaScript)?
How can I parse a stringified array of arrays (JavaScript)?

Time:12-13

I have a string which represents an array. The items in the array can be characters, or arrays. So a string might look like: [a,b,[[],[d]],[],[[[]]],[[c,[t,s]],b]]

And I want to parse that out so it's a proper array with subarrays etc

So "[a,b,[c,[d,e],[]]]" would become:

[ 'a',
  'b',
  [ 'c',
    ['d','e'],
    []
  ]
]

Is there an easy way to do this in JavaScript? Eg some kind of array equivalent of JSON.parse? I tried JSON.parse but it throws an error (not unexpectedly).

CodePudding user response:

You would have to process it to convert it into a format that JSON.parse would be able to handle. Your test case is simple so it is possible with an easy regular expression.

const str = "[a,b,[c,[d,e],[]]]";
const obj = JSON.parse(str.replace(/([a-z] )/gi,'"$1"'));
console.log(obj);

  • Related