hvorfor er this relativt til henviseren og ikke barnets forældre?
Hej,jeg har en klasse som gør en ting og så en anden, og til de forskellige opgaver bruger jeg selvfølgelig this-keyworded. Jeg er dog stødt på to tilfælde hvor parseren bliver nærmere forvirret og tror this er en henvisning til noget andet end det faktisk er.
hvis jeg i klassen har en funktion a og en funktion b, og jeg så f.eks. siger:
setInterval( "this.b()", 5000 );
når b-funktionen så bliver kørt, og jeg bruger this.x (i b funktionen), så tror parseren at this er en henvisning til setInterval-løbet og ikke til min klasse.
Det samme sker med min xmlrequest funktion, men det løste jeg ved at lave en delegator, men da det jo er hardcoded så er det ikke så smart.
Her er delegatoren:
function delegator( responseText ) {
updates.process( responseText );
}
Hvor updates er en instans er min klasse og responseText tekst er outputtet fra mit xmlrequest.
Det ville dog være smartere hvis jeg bare kunne have en funktionen i klassen som blev kaldt når xmlrequesten var modtaget og jeg så derfra kunne gøre "this.process( responseText )", men der taber parseren også track af this.
Er der noget jeg gør forkert eller har glemt, eller er det virkeligt bare javascript som er dum?
