我有一个问题 node.js 结构与 javascript oop。我使用另一个类创建了一个类。
var base = function (name) {
this.Rows = new Array();
};
var top = function (name) {
this.name = name;
};
top.prototype = new base();
var myClass = new top("");
myClass.Rows.push("a");
console.log(myClass.Rows);
var myClass2 = new top("test");
myClass2.Rows.push("b");
console.log(myClass2.Rows);
此代码返回以下结果;
[ 'a' ]
[ 'a', 'b' ]
但是我不必被算法发现为这段代码的结果?
[ 'a' ]
[ 'b' ]
谢谢你的帮忙。
已解决:我解决了这个问题。重构代码;
var base = function (name) {
this.Rows = new Array();
}
var top = function(name) {
top.prototype.constructor.call(this, name);
this.name = name;
}
top.prototype = Object.create(new base());
谢谢大家。