util.inherits(constructor, superConstructor) 是一个实现对象间原型继承的函数。 JavaScript的面向对象特性是基于原型的,与常见的基于类的不同。javascript没有提供对象集成的语言级别特性,而是通过原型复制来实现的。
var util = require("util")
function A(){
this.name = "wbs"
this.age = 15
}
A.prototype.showName = function(){
console.log(this.name)
}
function B(){
this.name = "wangxiaoshuo"
}
util.inherits(B,A);
var objB = new B();
objB.showName();//wangxiaoshuo
console.log(objB)//wangxiaoshuo
B仅仅继承了A在原型中定义的函数,而构造函数内部创造的age属性和函数(静态方法,若外面模块调用A时也只能调用静态方法)都没有被B继承。同时,在原型中定义的属性不会被console.log作为对象的属性输出,prototype创建的方法则属于私有方法。