0
私は別のオブジェクトからオブジェクトを抽出し、抽出されたオブジェクトを独立した独立変数として保持し、最初のオブジェクトの一部ではなくしたいと思います。次のように思われるが、少し畳み込まれているようだ。そうする正しい方法は何ですか?別のオブジェクトからオブジェクトを抽出する
function printIt(name,o) {
//Do this way so I can see what object was at given time.
console.log(name,JSON.stringify(o))
}
var o = {
a: 123,
b: {
a: 111,
b: 222,
c: [3, 2, 1]
},
c: {
a: 321,
b: 123,
c: [1, 2, 3]
}
};
printIt("o0", o);
var o_b = o.b;
printIt("o_b1", o_b);
printIt("o1", o);
o_b.a = 444;
o.b.c=666;
printIt("o_b2", o_b);
printIt("o2", o);
delete o.b;
printIt("o_b3", o_b);
printIt("o3", o);
https://jsfiddle.net/zn0asewb/1/
o0 {"a":123,"b":{"a":111,"b":222,"c":[3,2,1]},"c":{"a":321,"b":123,"c":[1,2,3]}}
o_b1 {"a":111,"b":222,"c":[3,2,1]}
o1 {"a":123,"b":{"a":111,"b":222,"c":[3,2,1]},"c":{"a":321,"b":123,"c":[1,2,3]}}
o_b2 {"a":444,"b":222,"c":666}
o2 {"a":123,"b":{"a":444,"b":222,"c":666},"c":{"a":321,"b":123,"c":[1,2,3]}}
o_b3 {"a":444,"b":222,"c":666}
o3 {"a":123,"c":{"a":321,"b":123,"c":[1,2,3]}}