我一直在製作多個庫和擴展庫,使用原型對我來說不實用,因爲在現實世界中,您實際上有私有變量不需要從實例化對象訪問。JavaScript:通過原型繼承,無需使用原型來定義/調用方法
var parent_class = function(num) {
var number = num;
this.method = function(anum) {
number += anum;
};
this.getNumber = function() {
var fnumber = number + 2;
return fnumber;
};
};
var child_class = function(num1, num2) {
var sum = num1 + num2;
parent_class.call(this, sum); // initialize parent class
this.method = function() {
sum -= 1;
base.method(sum); // what to do here
};
};
child_class.prototype = new parent_class(); // inherit from parent
child_class.prototype.constructor = child_class; // maintain new constructor
var c = new child_class(1, 4); // child_class.sum = 5, parent_class.number = 5
c.method(); // child_class.sum = 4, parent_class.number = 9
var num = c.getNumber(); // returns 11
如今,不宣而依靠被原型方法,我怎麼能得到what to do here
線工作?我知道我可以在child_class中調用this.method();
並將其作爲變量存儲,但我想覆蓋方法。
我之前的話題並不是非常即興,因爲每個人都認爲我可以對所有東西進行原型設計或使用私有變量來解決問題。沒有原型就必須有一種方法來做到這一點。
我想打電話從child_class
實例內.method();
而不存儲以前.method();
爲私有變量或使用,出於顯而易見的原因,不能訪問私有成員原型方法。
我不明白這個問題..你想達到什麼目的? – c69
我把它放在漂亮的粗體字體中。 –