2
我是一個JavaScript對象和原型的初學者,並試圖開發我的第一個「多級繼承」JS對象,出現了一個意外問題。 這是我的代碼:JavaScript對象繼承問題
var Utils = function() {};
Utils.prototype = {
sayHelloGeneral: function(){
console.log('hello');
}
};
var FormTools = function() {
Utils.call(this);
this.fields = [];
};
FormTools.prototype = Object.create(Utils.prototype);
FormTools.prototype.constructor = FormTools;
FormTools.prototype.sayHelloForm= function (fields) {
console.log('hello form');
};
function GroupManager(value) {
FormTools.call(this);
this.val = typeof values === 'undefined' ? 1 : value;
};
GroupManager.prototype = Object.create(FormTools.prototype);
GroupManager.prototype.constructor = GroupManager;
GroupManager.prototype.helloGroupManager= function (givenValue) {
console.log('Hello group manager');
};
爲什麼當我嘗試打電話給部門經理,它打印只sayHelloGeneral功能?
var GM = new GroupManager;
GM.sayHelloGeneral(); //->ok
GM.helloGroupManager(); //--> ok
GM.sayHelloForm(); //->sayHelloForm is not a function
http://jsfiddle.net/gvhmfoux/ –
爲me..where做工精細的片段是你的'的SayHello()'? –
對不起,它是'sayHelloGeneral'。修正:) –