El fragmento está detallando mi problema. Tengo un objeto que almacena una matriz de objetos (algunos de los cuales son matrices). Cuando presiono estas matrices internas, ese valor se inserta en todos los elementos de la matriz en lugar de solo en el índice que estoy buscando.
Siento que esto debería ser una solución realmente fácil, pero lo he intentado todo. Cambiar a concat, empujar, poner cosas en bucles for. Cuando ejecuto una versión simplificada en el fragmento (ver el fragmento a continuación), dice que hay una "ref" para una identificación determinada. No estoy seguro de lo que esto significa, ¡pero supongo que alguien lo sabe! cualquier ayuda sería genial.
const runs = { AC: { L: Array(10).fill({ stim: [], mask: [], resp: [], other: [] }), R: Array(10).fill({ stim: [], mask: [], resp: [], other: [] }) }, } let runData = runs["AC"]["R"][3] runData.stim.push(40) console.log(runs.AC.R)Estás llenando la matriz con la misma referencia. En su lugar, llene la matriz con elementos vacíos, luego map para insertar el objeto:
runs = { AC: { L: Array(10).fill().map(e=>({ stim: [], mask: [], resp: [], other: [] })), R: Array(10).fill().map(e=>({ stim: [], mask: [], resp: [], other: [] })) }, } let runData = runs["AC"]["R"][3] runData.stim.push(40) console.log(runs.AC.R)