¿Cómo inserto un objeto en una matriz por valor en lugar de por referencia? Específicamente, quiero mutar un objeto en un bucle for e impulsar su valor en cada iteración. Si hay una mejor manera de hacer esto sin mutar el objeto, esa también funciona.
Aquí está el problema:
> let foo = {"a": 1}; undefined > let arr = []; undefined > for (let i=0;i<10;i++) { ... arr.push(foo); ... foo.a += 1; ... } 11 > arr [ { a: 11 }, { a: 11 }, { a: 11 }, { a: 11 }, { a: 11 }, { a: 11 }, { a: 11 }, { a: 11 }, { a: 11 }, { a: 11 } ]yo lo que quiero es arr tener
[ { a: 1 }, { a: 2 }, { a: 3 }, { a: 4 }, { a: 5 }, { a: 6 }, { a: 7 }, { a: 8 }, { a: 9 }, { a: 10 } ](ignore el error off-by-1)