Cómo invocar la función privada por nombre

¿Cómo invocar la función por nombre? En realidad, sé cómo invocar la función por nombre, pero no puedo encontrar el alcance necesario. Entonces ahora tengo que usaresta["obtener"+ widgetName] , es funciona para_get_publishedBuildsWidget1 pero quiero que funcione como privado.

Entonces quiero invocar por nombre_get_publishedBuildsWidget2 función

    function widgetGeneratorService(commonDashboardService, $filter, buildService, $state) {

            var widgetGeneratorServiceFactory = {};

            widgetGeneratorServiceFactory._get_publishedBuildsWidget1 = function (widget) {
                widget.name = "Test",
                return widget;
            }
            var _get_publishedBuildsWidget2 = function(widget){
    widget.name = "Test",
                return widget;
    }

            widgetGeneratorServiceFactory.getDefaultWidget = function (widgetName) {
                var defaultWidget = {};
                //TODO rewrite!!!
                var fnGenerateWidget = this["_get_" + widgetName];
                if (typeof fnGenerateWidget === 'function') {
                    return fnGenerateWidget(defaultWidget);
                }


                return defaultWidget;

            }

            return widgetGeneratorServiceFactory;
        };

Respuestas a la pregunta(1)

Su respuesta a la pregunta