JavaScript中静态私有变量可以不可以不写在私有作用域中,而是写在构造函数中?

(function(){
    var privateVar = 10;
    function privateFun = function(){
        return false;
    }
    MyObject = function(){    
    };
    MyObject.prototype.publicMethod = function(){
        privateVar++;
        return privateFun();
    }
})();

可不可以这样写?

function MyObject(){
    var privateVar = 10;
    function privateFun = function(){
        return false;
    }
    MyObject.prototype.publicMethod = function(){
        privateVar++;
        return privateFun();
    }
}

我的意思是,这两种写法好像没什么区别,既实现代码复用,私有变量也是实例共享的。

阅读 570
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题