JavaScript - Extrahieren Sie die Funktion, während Sie sie privat halten

Derzeit habe ich diese Struktur:

(function(myScope) {
  myScope.public = function() {alert("I'm public!")};
  myScope.privileged = function() {alert("I can call private!"); private();};
  var private = function() {alert("I'm private!")};
})(window.myObj);

Es funktioniert gut.private ist von außen nicht zugänglichprivileged kann es nennen. Aber jetzt sind die privaten Teile zu groß, als dass ich sie herausholen könnte. Ich möchte es von außen unzugänglich halten, aber es muss von den privilegierten Funktionen aufgerufen werden. Gibt es einen Weg, das zu erreichen?

AKTUALISIEREN:

Das Obige ist nur ein Beispiel. Das allgemeine Problem ist, dass die einzelne js-Datei mit der Erweiterung der App lang und unhandlich wird. Das Ziel ist es, diese js-Datei in Module aufzuteilen, ohne die Privatsphäre zu beeinträchtigen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage