我有3类:如何设计此架构?
function A(data){
this.data = data || [];
}
A.prototype.remove = function(index){
// remove index from this.data;
};
function B(data){
this.data = data || [];
}
B.prototype.add = function(x){
this.data.push(x);
};
B.prototype.update = function(index, x){
this.data[index] = x;
};
function C(data){
this.data = data || [];
}
C.prototype.add = function(x){
this.data.push(x);
};
var a = new A(xx);
var b = new B(xx);
var c = new C(xx);
有关系:
如果我叫a.remove(i)
删除一个元素,b
将其添加到它data
。
如果我打电话给b.update(i, x)
,c
会将x
加到它的data
。
我怎么能设计这最小的耦合?
PS:这只是为了演示的情况为例,请不要在意初始化等