JavaScript: extraiga la función mientras la mantiene privada
Actualmente tengo esta estructura:
(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);
Funciona bien.private
no es accesible desde el mundo exterior mientrasprivileged
puede llamarlo Pero ahora las partes privadas son demasiado grandes, de modo que espero extraerlas. Quiero mantenerlo inaccesible desde el exterior, pero debe ser invocado por las funciones privilegiadas. ¿Hay alguna manera de lograr eso?
ACTUALIZAR:
Lo anterior es solo un ejemplo. El problema general es que a medida que la aplicación se extiende, el archivo js solo se vuelve largo e inmanejable. El objetivo es dividir dicho archivo js en un módulo, sin comprometer la privacidad.