ja-vas-cript-denn-da-so: public objects in der Konstruktor-Funktion / performance

Beitrag lesen

Hallo,

ich habe ein Spiel geschrieben, wobei sämtlicher Code in eine Konstruktor-Funktion geschachtelt ist.
Dabei hatte ich anfangs sehr viele öffentliche Variablen (aufgrund der vielen
Event-Handler, die ich benötige); zwecks Übersichtlichkeit habe ich dann das Schema
this.nameVar1 = bla;
this.nameVar2 = blo;
(...)
ersetzt durch (thematisch naheliegende) öffentliche Objekte als Literale
(this.Player, this.Game und this.Board); Beispiel:

  
this.Game = {  
	selection : {  
		cards : '',  
		back : '',  
		theme : '',  
		themeName : '',  
		players : '',  
		uncoverTime : ''  
	},  
	className : '',  
	status : '',  
	time : '',  
	seconds : '',  
	pause : '',  
	mute : 0,  
	audio : 0,  
	zoom : 0,  
	klickedCards : [],  
	klickedCardsSrc : []  
}  

Die Eigenschaften dieser Objekte rufe ich in den öffentlichen und privaten Methoden und den Event-Handlern sehr oft auf -
Frage: Ist dieses Vorgehen sinnvoll - und geht es auf Kosten der performance?
Außerdem: Wenn ich innerhalb einer Funktion/Methode mehrfach auf bspw. this.Game.selection.cards zugreife, empfiehlt es sich da, anfangs den Wert in eine private Variable zu speichern: var cards = that.Game.selection.cards?

Alles in allem bin ich noch sehr unschlüssig, wann eigene Objekte (mit oder ohne Methoden) sinnvoll sind.

Hoffe, mir kann da jemand auf die Sprünge helfen,

vielen Dank, Malte