title: JavaScript module pattern: How do private methods access module's scope?
body: <p>When implementing the module pattern, how do private functions access the private properties of the module? I haven't seen any examples where developers do this. Is there any reason not to?</p>
  
  <pre><code>var module = (function(){
      // private property
      var number = 0;
  
      // private method
      _privateIncrement = function(){
          // how do I access private properties here?
          number++;
      };
  
      // public api
      return {
          // OK
          getNumber: function(){
               return number;   
          },
          // OK
          incrNumber: function(){
               number++;  
          },
          // Doesn't work. _privateIncrement doesn't have
          // access to the module's scope.
          privateIncrNumber: function(){
              _privateIncrement();
          }
      };
  })();
  </code></pre>