JSのmapは、参照渡し

Javascript

以下のように、連想配列をmapすると参照渡しで元の値が書き変わってしまいます...どうすれば良いのだ...

const ary = [{a: 'b'}, {c: 'd'}]
ary.map(elem => elem.x = 3)
console.log(ary) // [ { a: 'b', x: 3 }, { c: 'd', x: 3 } ]