nodejs中的继承关系

JavaScript 的面向对象特性是基于原型的,与常见的基于类的不同。JavaScript 没有 提供对象继承的语言级别特性,而是通过原型复制来实现的。

在nodejs中通过使用util模块来实现继承关系。

util.inherits(子类名, 父类名)是一个实现对象间原型继承 的函数。

接下来开始进行代码演示。

1、先创建一个父类

//父类
function Parent() {
    this.name = 'parent',
    this.age = 21,
    this.sayHello = function() {
        console.log('hello '+this.name);
    }
}
Parent.prototype.showName = function() {
    console.log('我是'+this.name);
}

module.exports = Parent;

2、再创建一个子类

//子类
function Sub() {
    this.name = 'sub'
}

module.exports = Sub;

3、创建一个实现继承关系的类,首先引入util模块,由于util是nodejs核心模块,不用安装,直接引用即可

var util = require('util');
var Parent = require('./ParentClass');
var Sub = require('./SubClass');

util.inherits(Sub, Parent);        //让Sub类继承Base类

var parentObject = new Parent();
parentObject.sayHello();
parentObject.showName();
console.log(parentObject);

var subObject = new Sub();
// subObject.sayHello();
subObject.showName();
console.log(subObject);

运行结果为:

原文地址:https://www.cnblogs.com/wxsj/p/8510339.html