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