bis es6Funktionen sind in JS also die einzigste "Wirkungsvolle" Möglichkeit, einen separaten Scope zu eröffnen?
deswegen nutzt man auf globaler ebene ja auch meist ein konstrukt wieDas würde ja dafür sprechen, möglichst viel über Konstruktoren zu machen. Oder eben in den Methoden eines Objektes.
Code:
(function()
{
// code
})()
jaDas let aus ES6 würde auch schon in einem normalen Anweisungsblock { } "Gefangen" werden, verstehe ich das richtig?
der vorteil des konstruktors ist, du hast gleich eine funktion in der du private variablen und funktionen verstecken kannst.Wenn ich das richtig verstehe, habe ich 2 Möglichkeiten:
1. Ich arbeite mit den Konstruktorfunktionen, erzeuge mit var obj1 = new Constructor1 das Objekt und baue auch die Prototypenkette auf.
2. Oder ich erzeuge direkt ein object (entweder per Literal oder new Object).
Und dann befülle ich das Objekt mit Methoden und Eigenschaften
sonst must du eine createXXXObject funktion nutzen.
jaWenn ich das so mache, dann könnte ich mir ja den Aufwand mit der Prototypenkette komplett sparen und einfach selber gleich ein Objekt zusammenbauen wie ich es haben will?
https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Object/createWenn ich das richtig sehe, hat er bei dem voran gegangen Beispiel sogar einen Prototyp angegeben, obwohl ich ihn nicht selbst angegeben habe.