割り当ての特定の順序が機能し、別の順序が機能しない理由について簡単な質問がありました。
あるオブジェクトから別のオブジェクトにプロパティをコピーする単純な「継承」/「コピー」関数(テスト用)を作成したかった:
var cat = { tail:"yes", hairy:"yes, hairy" };
var dog = { sick:"extremely ill"};
function inherit(obj1, obj2) {
for (var p in obj1)
{
obj2[p] = obj1[p]; // this works, but "obj1[p] = obj2[p];" doesn't. Why??
}
}
inherit(cat, dog);
console.log(dog.tail);