我遇到a tutorial已经提供了继承代码:
module.exports = function(db) {
this.db = db;
};
module.exports.prototype = {
extend: function(properties) {
var Child = module.exports;
Child.prototype = module.exports.prototype;
for(var key in properties) {
Child.prototype[key] = properties[key];
}
return Child;
},
setDB: function(db) {
this.db = db;
},
collection: function() {
if(this._collection) return this._collection;
return this._collection = this.db.collection('fastdelivery-content');
}
}
Child.prototype = module.exports.prototype;
有什么需要?由于Child只是module.exports,因此它应该具有相同的原型。那我们为什么要这样做?
我们正在覆盖module.exports.prototype
,我们正在其中使用module.exports.prototype。它是如何工作的?这种循环依赖不是吗?