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

209
Views
How to merge strings from 3 different objects in a list?

What I want to do is merging 3 strings according to the sequence in both the lists.

For example, in an array I have these 3 items which have their data in string form:

1: {
    permissionIDList: "1,2,3"
    permissionNameList: "Admin Role,Admin Role,Bulletin Board"
    permissionTypeList: "view,edit,view"
}

I want to merge the lists and map it into both value and label so that it will become:

0: {value: 1, label: Admin Role - view}
1: {value: 2, label: Admin Role - edit}
2: {value: 3, label: Bulletin Board - view}
about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Array.reduce implementation

const data = {
    permissionIDList: "1,2,3",
    permissionNameList: "Admin Role,Admin Role,Bulletin Board",
    permissionTypeList: "view,edit,view",
};
const [permissionIDList, permissionNameList, permissionTypeList] = [data.permissionIDList.split(','), data.permissionNameList.split(','), data.permissionTypeList.split(',')];
const merger = permissionIDList.reduce((acc, curr, index) => {
  acc[curr] = {
    value: curr,
    label: `${permissionNameList[index]} - ${permissionTypeList[index]}`
  }
  return acc;
}, {});
console.log(merger);

If your final data response is an array, you can make use of Array.map

const data = {
    permissionIDList: "1,2,3",
    permissionNameList: "Admin Role,Admin Role,Bulletin Board",
    permissionTypeList: "view,edit,view",
};
const [permissionIDList, permissionNameList, permissionTypeList] = [data.permissionIDList.split(','), data.permissionNameList.split(','), data.permissionTypeList.split(',')]
const merger = permissionIDList.map((node, index) => ({
  value: node,
  label: `${permissionNameList[index]} - ${permissionTypeList[index]}`
}));
console.log(merger);

about 4 years ago · Juan Pablo Isaza Report

0

This code gives what you need:

const strings = {
    permissionIDList: "1,2,3",
    permissionNameList: "Admin Role,Admin Role,Bulletin Board",
    permissionTypeList: "view,edit,view"
}
const permissionIDList = strings.permissionIDList.split(',');
const permissionNameList = strings.permissionNameList.split(',');
const permissionTypeList = strings.permissionTypeList.split(',');

const result = [];

for(let i = 0; i < permissionIDList.length; i++){
  result.push({
    value: permissionIDList[i],
    label: permissionNameList[i] + " - " + permissionTypeList[i]
  });
}

console.log(result);
about 4 years ago · Juan Pablo Isaza Report

0

Another implementation could be:

const value = {
    permissionIDList: "1,2,3",
    permissionNameList: "Admin Role,Admin Role,Bulletin Board",
    permissionTypeList: "view,edit,view",
}

Object.entries(value).map((item,i) => {
    const permissionNameList = value['permissionNameList'].split(','[i];
    const permissionTypeList = value['permissionTypeList'].split(','[i];
    const permissionIDList = value['permissionIDList'].split(',')[i];

return {
    value: permissionIDList,
    label: `${permissionNameList} - ${permissionTypeList}`
  }

})
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!