js创建抽象类

时间:2012-10-02 14:21:47

标签: javascript

我正在尝试使用以下声明在js中创建一个抽象类(模仿oops)。如果我对下面的每个方法使用prototype关键字都会失败(参见下面的案例1)但是当我使用没有prototype关键字时,它不确定我是否声明它是正确的...但是当js文件被声明到主页面时,同样的声明有效但是从对话框调用时失败..我认为声明是问题

if(nsp === undefined) var nsp  = {}; // nsp is the namespace

nsp.abstractCls=  function(){} ; //abstractCls is the abstract function & subclass function will extend perfAction methods (overriden methods)
nsp.abstractCls.prototype ={};

//case-1 fails , throws error is not a function (prototype keyword is present)
nsp.abstractCls.prototype.perfActiOn = function(){
    return "success";
} ;

//case-2 this works (no prototype keyword)
nsp.abstractCls.perfActiOn = function(){
    return "success";
} ;

statment nsp.abstractTbl.prototype.perfTable wroks但不确定是否正确使用prototype关键字来调用每个函数..

1 个答案:

答案 0 :(得分:0)

尝试取出将该类的原型声明为新对象的行。