node里实现继承的一种方式
之前的文章里写过普通js里实现继承的方式,现在记录下node里如何实现继承。
util
类中实现了很多有用的方法,其中就包括继承inherits
,在node中我们经常用它实现继承。
//robot.js
var robot = function(info, config){
var self = this;
self.info = info;
self.config = config;
self.func = function(){
//...
}
};
module.exports = robot;
//robot_normal.js
var robot_base = require('./robot');
var robot_normal = function(info, config, other){
var self = this;
//使用call方法将子类作为this调用父类的构造函数
robot_base.call(this, info, config);
//然后是子类自己的方法
self.other = other;
self.funcc = function(){
//...
}
};
//然后用inherits将prototype中的属性也继承下来
//虽然这个例子中并没有在原型里写的特别方法
util.inherits(robot_normal, robot_base);
module.exports = robot_normal;
这样robot_normal这个子类可以调用父类的方法啦。