我定义了一个javascript继承函数并尝试继承一个类
function extends(Child, Parent) {
var F = function(){};
F.prototype = Parent.prototype;
Child.prototype = new F();
Child.prototype.constructor = Child;
Child.uber = Parent.prototype;
}
function MyClass (){
};
MyClass.prototype.doSomeThing=function(){
};
然后我写了
var a={};
extends( a , MyClass );
a.doSomeThing();
但它报告a.doSomeThing不是函数
欢迎任何评论
答案 0 :(得分:0)
你的变量A是一个对象,而不是一个构造函数/函数,所以a.doSomething不是一个函数,而是一个.prototype.doSomething。
将a转换为函数或松开Child.prototype = ..以使其工作。