任何人都可以請幫助我。我正在嘗試與多重繼承相處。但我的代碼不工作,因爲我的對象obja不知道sayhello()。javascript繼承與'that'
它是importent該線
VAR那=新InputModule();
已包含在內。但我不知道如何解決它。
var InputModule = function(title, type){
var that = this;
that.title = title;
that.type = type;
that.return = null;
that.sayHello = function(){
console.log("Hello! I'm " + that.title + " and I'm an " + that.type + "Module!");
}
}
var IntModule = function(){
var that = new InputModule("newti", "int");
}
var obja = new IntModule();
obja.sayHello();
編輯:
我想的是,IntModul是InputModul可以使用該功能的SayHello();. 我的同事說我sholudn't使用原型,並應該使用行「var that = new InputModule」。 比我創建一個新的Modul,它是一個IntModul並且也可以使用sayhello(),因爲它是一個InputModul。但是還有其他一些類似LetterModul的Modul也應該從InputModul繼承。 我希望這是有道理的。我很沮喪......
在這段代碼中沒有理由需要指定= this。 – Cruiser
如果你能解釋你希望你的代碼做什麼,這將有所幫助。你說這條線是「重要的」:爲什麼?它實際上沒有做任何事情。 – Pointy
多繼承?你的例子甚至不顯示單一繼承。另外'return'是一個關鍵字。 – kay