添加方法 class Node.js

Add methods to class Node.js

我有两辆类,一辆:

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")}

如您所见,Configuration 中的两个实现方法如下所示:

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

您似乎想合并两个对象。如果可用,您可以使用 Object.assign 执行此操作:

Object.assign(Motorbike.prototype, config);

请参阅 How can I merge properties of two JavaScript objects dynamically? 了解其他方法。