title: Access default getter/setter for JavaScript object
body: <p>JavaScript getters and setters can be overridden for specific properties using <code>Object.defineProperty</code>. Is there some way to access the default getter/setter (i.e. the function used if the getter/setter has not been overwritten)? In my custom setter I want to have special processing in some cases, but use the default processing in others. I tried:</p>
  
  <pre><code>Object.defineProperty(obj, 'foo',
    'set': function(val) {
      if (useCustom) {
        doCustomProcessing(obj, 'foo', val);
      }
      else {
        obj['foo'] = val;
      }
    }
  );
  </code></pre>
  
  <p>Unfortunately this leads to a stack overflow since <code>obj['foo'] = val;</code> causes the custom setter to be invoked. So I'd like to find a way to set the <code>foo</code> property of <code>obj</code> using the default setter. Is this possible?</p>