-1

Need help for converting an array to array of object adding label.

For example I have an array:

data = ["data1", "data2", "data3"]

I want to convert and adding label. The result expected:

[
   {label: "data1", value: "data1"},
   {label: "data2", value: "data2"},
   {label: "data3", value: "data3"}
]
DIR
  • 57
  • 4

3 Answers3

4

Just using data.map(d => ({label:d,value:d})) can do it

let data = ["data1", "data2", "data3"]

let result = data.map(d => ({label:d,value:d}))

console.log(result)
flyingfox
  • 13,414
  • 3
  • 24
  • 39
2
const data = ["data1", "data2", "data3"];
const object = [];
data.forEach((element) => {
  const obj = { label: element, value: element };
  object.push(obj);
});
console.log(object);
Sahil jangra
  • 121
  • 7
0

You can achieve it using multiple ways, below is an implementation using reduce

let data = ["data1", "data2", "data3"];
let result = data.reduce((acc, item) => {
   acc.push({label: item, value: item});
   return acc;
   }, []);
console.log(result);
Amaarockz
  • 4,348
  • 2
  • 9
  • 27