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

206
Views
How to form one string array based on two other arrays using map in ES5?

I am writing a simple js/es5 script to combine all the strings in a CWL. The CWL only supports ES5, so there are many functions/features from ES6 cannot be used. I am not familiar with js in general.

For a minimal example:

var arr1 = ["a", "b"]
var arr2 = ["111", "222"]

Expected result:

["a_111", "b_111", "a_222", "b_222"] // order doesn't matter

I tried this way, but it did not work and only returned ["a_111", "b_111"]

arr1.map(function(x) {
  return arr2.map(function(y) {
    return x + "_" + y;
  });
});
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

I wouldn't bother using map for this. Just have a nested loop and push a string into a new array.

var arr1 = ['a', 'b'];
var arr2 = ['111', '222'];

var out = [];

for (var i = 0; i < arr2.length; i++) {
  for (var j = 0; j < arr1.length; j++) {
    var str = arr1[j] + '_' + arr2[i];
    out.push(str);
  }
}

console.log(out);

about 4 years ago · Juan Pablo Isaza Report

0

What you can use is a combination of reduce(), concat() and map():

let result = arr1.reduce((acc, a) => acc.concat(arr2.map((b) => a + "_" + b)), []);
// => [ 'a_111', 'a_222', 'b_111', 'b_222' ]

Alternatively when flat() is available you can use:

let result = arr1.map((a) => arr2.map((b) => a + "_" + b)).flat();
// => [ 'a_111', 'a_222', 'b_111', 'b_222' ]

I am not sure if flat() works with ES5 though.

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!