在javascript中,如何在另一个原型方法中调用一个原型方法?

假设我有一个功能:

function test(){}

test.prototype.method01=function(){
    //do something
}

test.prototype.method02=function(){
    //how can I call the method01?
    //this.method01()...?
    //but the chrome through an error:
    //Uncaught TypeError: Object #<HTMLImageElement> has no method 'method01'
}

编辑:
其实method01就像这样:

test.prototype.method02=function(){
    $('.cpy').resizable({

    }).draggable({
        start:function(e,ui){
            this.method01();
        }
    });
}
最佳答案
test.prototype.method02=function(){
    var testThing = this;
    $('.cpy').resizable({

    }).draggable({
        start:function(e,ui){
            testThing.method01();
        }
    });
}

您必须在另一个本地变量中保留此引用,以便在调用其他方法时回调函数可以使用它.这个引用被绑定在每个函数调用上,包括对回调函数的调用,如你在“.draggable()”设置中使用的函数.当这被称为这将被设置为与“method02”功能不同的东西.

转载注明原文:在javascript中,如何在另一个原型方法中调用一个原型方法? - 代码日志