我有一个这样定义的 JavaScript 对象:
var Object = (function () {
function Object() {
this.id = RandomNumber();
}
// Custom Object.prototype / Object impementations here...
return Object;
})();
问题是,一旦构建完成,它就会失去原始功能等Object.defineProperty
。
这个想法是我想扩展 Object 的基本功能,而不是重写或覆盖现有的原型。
如何做到这一点?
编辑:为了清楚起见,我知道我可以在不影响原始功能的情况下做到这一点:
Object.prototype.foo = function() { }
但我需要专门为对象的构造函数添加功能,即
function Object() { this.id = 0; }
新功能不得覆盖原始功能。