Javascript 不知道原始和扩展的继承

Javascript 不知道原始和扩展的继承,javascript,inheritance,abstraction,Javascript,Inheritance,Abstraction,我有一个实现继承的函数: function extend(original, extension) { for (var key in extension) { if (extension.hasOwnProperty(key)) { original[key] = extension[key]; } } }; 我有两件随手可得的东西: var a={/* created dynamically */} var b={/* created dynamical

我有一个实现继承的函数:

function extend(original, extension) {
  for (var key in extension) {
    if (extension.hasOwnProperty(key)) {
      original[key] = extension[key];
    }
  }
};
我有两件随手可得的东西:

var a={/* created dynamically */}
var b={/* created dynamically */}
如何知道哪一个是原始的以及扩展的? 然后我可以做:

extend(a, b) //if a is original & b is extension


对不起,你的问题是什么?对不起:…问题是:如何知道哪一个是原始版本以及扩展版本?然后我可以做:扩展(a,b)//如果a是原始的,b是扩展的,或者扩展(b,a)//如果b是原始的,a是扩展的,你如何定义“原始”和“扩展”?您的
extend
方法所做的就是扩展第一个对象,该对象使用第二个对象的值传递给它。没有隐含的“正确”顺序;这完全取决于你想做什么。我想合并两个普通物体
extend(b, a) // if b is original & a is extension