Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

232
Views
get array, separate comma separated values and then recreate array

I have the following array:

[
["Polymeric", "Vehicle Graphics (Basic)"],
["Cast", "Vehicle Graphics (Part Wrap), Vehicle Graphics (Full Wrap)"],
["Polymeric", "Vehicle Graphics (Part Wrap)"]
]

You'll notice that the 2nd lines of the array's second value has a value separated by a comma. I want to recreate the array like so.

[
["Polymeric", "Vehicle Graphics (Basic)"],
["Cast", "Vehicle Graphics (Part Wrap)"],
["Cast", "Vehicle Graphics (Full Wrap)"],
["Polymeric", "Vehicle Graphics (Part Wrap)"]
]

Here's what I have so far:

const media = [ 
["Polymeric", "Vehicle Graphics (Basic)"],
["Cast", "Vehicle Graphics (Part Wrap), Vehicle Graphics (Full Wrap)"],
["Polymeric", "Vehicle Graphics (Part Wrap)"]
];

var filteredArray = media.filter(function(r) {return r[1]})

filteredArray.forEach(function(value) {
   var fgh = value.slice(1);
   var cddd = [value.shift()]; // takes first part
   var ttt = fgh.toString()
   var str_array = ttt.split(', ');
      const array3 = cddd.concat(fgh);
     console.log(str_array);
});

I understand I need to use concat, split and then finally push it back but whatever I try I'm not getting the result I need so I need help and now I'm lost?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

If you can ensure your nested arrays will always have two elements then it's quite simple:

const source = [ 
  ["Polymeric", "Vehicle Graphics (Basic)"],
  ["Cast", "Vehicle Graphics (Part Wrap), Vehicle Graphics (Full Wrap)"],
  ["Polymeric", "Vehicle Graphics (Part Wrap)"]
];

// Flat map instructs that 
// the nested arrays we're going to return
// should be spread onto the root one
source.flatMap(([key, value]) => { // [key, value] de-structs the array passed as a parameter
  // Here we're getting an array of all possible values; 
  // if there's no ", " then we get a single element, 
  // otherwise we get the whole collection of values
  const values = value.split(', ') 

  // Now, for each of the individual values we create the key-value pairs
  return values.map(singleValue => [key, singleValue])
})

Yields: enter image description here

  • Array destructuring JavaScript

  • Docs for flatMap

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!