JavaScript - extrai a função mantendo-a privada
Atualmente eu tenho essa estrutura:
(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 bem.private
não é acessível do mundo exterior enquantoprivileged
pode chamá-lo. Mas agora as partes íntimas são grandes demais, de modo que espero extraí-las. Quero mantê-lo inacessível do lado de fora, mas ele precisa ser invocado pelas funções privilegiadas. Existe uma maneira de conseguir isso?
ATUALIZAR:
O acima é apenas um exemplo. O problema geral é que, à medida que o aplicativo se estende, o único arquivo js cresce para se tornar longo e incontrolável. O objetivo é dividir esse arquivo js em módulo, sem comprometer a privacidade.