Reputation: 771
I need a help, how to convert an array to array of objects.
Eg: may be this is the array
let a = ["abc", "mno"]
I want it to be like this:
let b = [
{
"text": "abc"
},
{
"text": "mno"
}
]
please help me to fix this. Thanks.
Upvotes: 0
Views: 269
Reputation: 20441
.map()
with arrow notation
should do it:
.map()
-> loops over an array and returns a transformed array.
With arrow functions you need not right return
statement if you skip the curly braces along. Enclose them in parentheses (()
) whenever you want to return an object.
let a = ["abc", "mno"];
let b = a.map(item => ({"text" : item}));
console.log(b);
Upvotes: 1
Reputation: 685
const a = [ "abc", "mno" ];
const b = a.map( ( item ) => { return {text:item} } );
console.log('a => ', a)
console.log('b => ', b)
explanation :
array.map is looping to every element of the array and if you provide return it will create new array from the return of every element
in this case the return is an object of { text:item }
by item being the element of which index on the loop
Upvotes: 2
Reputation: 3844
You can make use of array.forEach and array.push function to do so.
Upvotes: 0