Javascript 在作用域内创建类不允许全局对象访问方法

Javascript 在作用域内创建类不允许全局对象访问方法,javascript,scope,Javascript,Scope,我试图在作用域中创建一个类,但无法调用为其创建的方法。为什么这个方法不可访问 代码片段 var ClientController; (function($, cc){ function ClientController(){ this.GVNavUpdate = function(){ console.log('this works'); } } cc = new ClientController(); })(

我试图在作用域中创建一个类,但无法调用为其创建的方法。为什么这个方法不可访问

代码片段

var ClientController;

(function($, cc){
    function ClientController(){
        this.GVNavUpdate = function(){
            console.log('this works');
        }
    }

    cc = new ClientController();

})(jQuery, ClientController);

ClientController.GVNavUpdate();
试试这个:

var ClientController = (function($) {
    function ClientController() {

        this.GVNavUpdate = function() {
            console.log('this works');
        }

    }

    return new ClientController();
})(jQuery);

ClientController.GVNavUpdate();

那对我来说毫无意义?您将类作为
cc
传递给自调用函数,然后在其中仍然使用类名,并用新的
cc
覆盖传递的
cc
?为什么您认为您的自执行函数会影响全局范围?