Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF
¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
Vanuit de 'onload' van img wil ik graag de waarde 'waarde' (this.waarde) uit de klasse mijnKlasse krijgen.
Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| function mijnKlasse() { var that = this; this.waarde = 10; this._functie = function() { alert(this.waarde); //10 var img = new Image(); img.onload = function() { alert(that.waarde); } } } |
[ Voor 6% gewijzigd door CoolGamer op 28-10-2010 22:26 ]
¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF
Zie evt. hier voor meer informatie: http://javascript.crockford.com/private.html
Je moet je even inlezen in scoping.
Webberry Webdevelopment
Ik heb hem ondertussen parent genoemd, en ik zal de gestuurde linkjes binnenkort eens doorlezen. Nu eerst wat werkends krijgen.X-Lars schreef op donderdag 28 oktober 2010 @ 22:38:
Zonder de hele context te kennen lijkt het mij wel goed wat je doet/wilt. Als je dit ranzig vindt, raad ik je af verder te programmeren in JavascriptPersoonlijk vind ik alleen de "that" conventie lelijk, ik gebruik "oThis" danwel een naam die het object daadwerkelijk beschrijft (bijv. oMijnKlasse). Maar dat maakt functioneel niets uit natuurlijk.
Zie evt. hier voor meer informatie: http://javascript.crockford.com/private.html
Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| function mijnKlasse() { var that = {}; var waarde = 10; var functie = function() { alert(waarde); //10 var img = new Image(); img.onload = function() { alert(waarde); }; } that.functie = functie; return that; }; |
Vervolgens gaan we t gebruiken:
var klasseInstantie = mijnKlasse();
en met klasseInstantie.functie(); krijgen we dan de waarde 10 terug (met die img.onload gebeurt niets).
Ben overigens wel erg benieuwd naar wat je precies wilt, want daar snap ik op 't moment nogal weinig van
Hij wou een verwijzing hebben naar de instantie van "mijnKlasse".garagaholic schreef op donderdag 28 oktober 2010 @ 23:03:
Het kan ook wel zonder this.
[...]
Vervolgens gaan we t gebruiken:
var klasseInstantie = mijnKlasse();
en met klasseInstantie.functie(); krijgen we dan de waarde 10 terug (met die img.onload gebeurt niets).
Ben overigens wel erg benieuwd naar wat je precies wilt, want daar snap ik op 't moment nogal weinig van
Nadeel van jouw code is dat je waarde niet meer van buitenaf kan beschrijven.
¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
En voor de code: http://cl.ly/31to
Nu ben ik nog niet zo bekend met Canvas (en wiskunde) dus dit kan vast beter. En dat ga ik ook proberen, maar de klant wilde morgen een demo. Vandaar.
Dont mind rotation en rotationY, dat kan beter via parameters e.d, maar het moest wat snel snel snel. In het eindproduct wordt dit beter gedaan, dit was meer een snelle oefening kijken hoe het werkt.
[ Voor 20% gewijzigd door ZpAz op 28-10-2010 23:28 ]
Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF
Deze variabele dus even veilig stellen, zij het met "that", "oThis" of "self", of hoe je het ook wilt noemen, is dus gewoon wat je wilt.
Er zijn wel betere methodes als je code complexer wordt, maar in dit voorbeeld zou ik niet te moeilijk doen.
[ Voor 21% gewijzigd door Bosmonster op 28-10-2010 23:33 ]
[ Voor 18% gewijzigd door ZpAz op 28-10-2010 23:36 ]
Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF