title: Catch all unhandled javascript promise rejections
body: <p>I would like to catch all unhandled exceptions/rejections that take place within a javascript Promise. Is there a good method for catching them without adding a <code>.catch(..)</code> on each end of the Promise chain? (in case of forgetting to add this, the error silently disappears).</p>
  
  <p>The developer console in Google Chrome can log them, I like to log them as well in a production environment.</p>
  
  <p>For normal javascript exceptions I use the <code>window.onerror</code> function, but the errors from a Promise call this function.</p>
  
  <p>Example:</p>
  
  <pre><code>window.onerror = function (e) {
      alert("unhandled error: " + e);
  };
  
  var p = new Promise(function (resolve, reject) {
      var nullObject = null;
      // Raise a TypeError: Cannot read property 'forceNullError' of null
      var x = nullObject.forceNullError(); 
      resolve();
  });
  
  p.then(function () { alert('success'); });
  </code></pre>
  
  <p>JSFiddle: <a href="https://jsfiddle.net/f7zwej6L/">https://jsfiddle.net/f7zwej6L/</a></p>
  
  <p>*) I noticed that WinJS has a <code>.done(..)</code> method for what I want, but Native Promises don't.</p>