我有两个班,一个汽车:
var config = require('./configuration');
module.exports.Car = function(){}
module.exports.Car.prototype.set_tires = config.set_tires;
module.exports.Car.prototype.remove_tires = config.remove_tires;
module.exports.Car.prototype.drive = function(){console.log("BRUMMM BRUMMM")}
和摩托车:
var config = require('./configuration');
module.exports.Motorbike = function(){}
module.exports.Motorbike.prototype.set_tires = config.set_tires;
module.exports.Motorbike.prototype.remove_tires = config.remove_tires;
module.exports.Motorbike.prototype.drive = function(){ console.log("BR BR BRUUMM")}
如您所见,配置中的两种实现方法如下所示:
module.exports.set_tires = function(tires){
this.tires = tires;
}
module.exports.remove_tires = function(){
console.log("The " + this.tires + " Tires will be removed");
this.tires = null;
}
我想知道是否有另一种更好的方法来实现这些方法?在这个例子中,我给了你的只有两种共享方法,但是你可以轻松地丢失概述。 另外我想知道是否有更好的方法可以不经常重复module.exports
?
答案 0 :(得分:2)
好像你想要合并两个对象。您可以使用Object.assign
执行此操作:
Object.assign(Motorbike.prototype, config);
有关替代方法,请参阅How can I merge properties of two JavaScript objects dynamically?。