我有兩個文件:BaseClass.js和DerivedClass.js。內容如下Javascript關閉和繼承
//---------------------BaseClass.js----------------------------
(function() {
BaseClass= function() { };
BaseClass.prototype.getTestVar = function() {
return 'base test variable';
};
})();
//----------------DerivedClass.js----------------------------
(function() {
DerivedClass= function() { };
DerivedClass.inherits(BaseClass);
DerivedClass.prototype = new BaseClass();
DerivedClass.prototype = {
newvar : 'derived func variable ',
getNewVar : function() { return this.newvar; }
};
})();
在我的HTML文件 '的test.html' 我有以下
var dc = new DerivedClass();
alert(
'The value in newvar of derived class ' + dc.getNewVar() +
' base class variable ' + dc.getTestVar()
);
我得到的JavaScript錯誤是dc.getTestVar()不是一個函數。 任何幫助解決這個問題都非常感謝。
你使用某種OOP庫嗎? Javascript函數沒有內置的'inherits'方法,據我所知... – Matchu 2012-07-22 02:38:30
哦,是不是[Crockford的OOP糖](http://www.crockford.com/javascript/inheritance.html#sugar)? – Matchu 2012-07-22 02:39:40