やったこと
JavaScript の Object.assign()
を使ってみます。
調査
参照渡し (意図せず値が変わってしまう)
Console
o = {a: 100, b: 200}
{a: 100, b: 200}
var o2 = o
undefined
o["a"] = 555
555
o2
{a: 555, b: 200}
Object.assign() を利用する場合
Console
o = {a: 100, b: 200}
{a: 100, b: 200}
var o2 = o
undefined
var o2 = Object.assign({}, o)
undefined
o["a"] = 555
555
o2
{a: 100, b: 200}