Ich verwende in meinem Code normalerweise etwas, das dem Designmuster benutzerdefinierten Objekten sehr ähnlich ist.
Aber JSLint runzelt die Konstrukte wie folgt:
%Vor%Da das Objekt sofort nach der Erstellung verworfen wird, wird es für nichts verwendet. Wir können JSLint täuschen, dies zu ignorieren, indem wir es einer Variablen zuweisen, aber es ändert nicht, dass JSLint (und ich vermute viele JavaScript-Enthusiasten) das Muster abhält.
Warum werden Nebenwirkungen in einem JavaScript-Konstruktor als schlechte Methode betrachtet?
Für das, was es wert ist, dachte ich, dies sei eine gute Praxis, weil:
In seinem Buch Clean Code sagt Robert Martin
Nebenwirkungen sind Lügen. Deine Funktion verspricht eine Sache zu tun, aber es tut auch andere verborgene Dinge ... sie sind hinterhältig und schädigende Irrtümer, die oft zu seltsamen zeitlichen Kopplungen und Abhängigkeiten führen.
Was Sie in Ihrem Kommentar zu Arrays beschrieben haben, klingt wie eine "seltsame zeitliche Kopplung".
Tags und Links javascript constructor coding-style