У меня есть объект, называемый o
. Я хочу присвоить элементам массива newOb
o
так что любое изменение, сделанное с newObj
, повлияет на o
. Пока это прекрасно работает:
let o = {}
let c = {c:18}
let newOb = [{a: 55}, {b: 55}]
o.propA = newOb[0]
o.propB = newOb[1]
newOb[0].a++
console.log(newOb, o)
Выход:
Array [Object { a: 56 }, Object { b: 55 }] Object { propA: Object { a: 56 }, propB: Object { b: 55 } }
До этого:
let o = {}
let c = {c:18}
let newOb = [{a: 55}, {b: 55}]
o.propA = newOb[0]
o.propB = newOb[1]
newOb[0] = c
console.log(newOb, o)
Выходы
Array [Object { c: 18 }, Object { b: 55 }] Object { propA: Object { a: 55 }, propB: Object { b: 55 } }
Когда я пытаюсь изменить элемент, если newOb
, свойства o
не влияют. Есть ли решение для этой проблемы?
let o = {}
let c = {c:18}
let newOb = [{a: 55}, {b: 55}]
o.propA = a => newOb[0]
o.propB = a => newOb[1]
newOb[0] = c
console.log(newOb, o.propA(), o.propB());