Tente executar o seguinte código:
function MyClass()
{
this.m_name = "my name";
}
MyClass.prototype.printMyName = function()
{
Log(this.m_name);
return true;
}
function main() {
var myobj = new MyClass();
myobj.printMyName();
_C(myobj.printMyName);
}
O resultado impresso é:
Quando o _C ((myobj.printMyName) é chamado, o this dentro da função não aponta para o objeto myobj. Como resolver esse problema?
Inventor quantificado - sonho pequeno- Não. função MyClass (() { Var self = {} self.m_name = "Meu nome" - Não. self.printMyName = função () { Registo (self.m_name) retornar verdadeiro - Não. - Não. Retorno de auto - Não. função principal (() { var myobj = MyClass (() myobj.printMyName (() _C ((myobj.printMyName) - Não. - Não.
Inventor quantificado - sonho pequenoA causa é que o myobj.printMyName foi enviado para o _C, e o this apontado para o ≪ foi alterado≫ causando o problema≫.
relâmpagoObrigado!