Siri: Verlaufen im JS-Dschungel...

Beitrag lesen

Hallo,

ich versuch ja, von Zeit zu Zeit mein JS-Kenntnisse zu verbessern. Vor kurzem bin ich bei Molily
auf Module mit loser Koppelung gestoßen. In Zusammenarbeit mit einem Namensraum (ganz am Ende des Kapitels 5), kam dieses Konstrukt heraus:

var TestNameSpace = {};	  
  
TestNameSpace.displayUtilities = (function (displayUtilitiesModule) {  
	displayUtilitiesModule.getDisplayWidth = function() {  
		return document.body.clientWidth;  
	}  
	  
	// Weitere "geleichartige Methoden": getDisplayHeight etc.  
	  
	return displayUtilitiesModule;  
	  
}(TestNameSpace.displayUtilities || {}));  
alert(TestNameSpace.displayUtilities.getDisplayWidth());

Durch das Posting von 1UnitedPower bin ich zu folgendem Konstrukt gelangt:

var TestNameSpace = {};	  
  
TestNameSpace.displayUtilities2 = {  
	getDisplayWidth: function() {  
		return document.body.clientWidth;	  
	}  
	  
	// Weitere "gleichartige Methoden": getDisplayHeight etc.  
}  
alert(TestNameSpace.displayUtilities2.getDisplayWidth());

Macht irgendwie das gleiche, ist aber kompakter?! Mir fällts unheimlich schwer zu entscheiden, wann welches "Pattern" am besten zum Einsatz kommt.
Ziel ist ein modulares JS-FW mit eigenem Namespace.

Kann jemand was zu den Beispielen sagen? Auch unter CodePen zu sehen.

Viele Grüße
Siri