Marwen Hizaoui
Marwen Hizaoui

Reputation: 99

Add key value to an array elements in JS

I can't add a key value pair to my array objects:

 const arr = [{'a' :1, 'b':2},{'a':2, 'b':4}]
 arr.map( item => {item.price = 1
 document.getElementById("body").innerHTML += 'a : '+ item.price + ' ' });
   

I want arr to be :

{'a' :1, 'b':2, 'price' : 1},{'a':2, 'b':4, 'price' : 1}

Upvotes: 0

Views: 74

Answers (1)

jsh
jsh

Reputation: 66

The map function doesn't modify the array you do it to, it returns a new modified array. So you must assign the output to a variable. I would suggest reading a bit more how mapping arrays works on the MDN Docs.

Here's how I would implement what you're looking for:

const arr = [{'a' :1, 'b':2},{'a':2, 'b':4}];
const newarr = arr.map( item => ({ ...item, price: 1 }) )

Upvotes: 4

Related Questions