1UnitedPower: deep copy eines Range-Objektes

Beitrag lesen

Eher nicht:

var o1, o2;

o1 = {a:1, b:2, c:3};
o2 = Object.beget(o1);
console.log(o2.b); // 2
o1.b = 6;
console.log(o2.b); // 6  OOPS!

  
Das ist interessant, wenn ich o2.b vorher nämlich mit einem Wert belege verhält es sich anders:  
  
~~~javascript
  
 o1 = {a:1, b:2, c:3};  
 o2 = Object.beget(o1);  
 o2.b = 2;  
 console.log(o2.b); // 2  
 o1.b = 6;  
 console.log(o2.b); // 2  

Kann mir das jemand erklären oder ein Stichwort nennen?