Exceptions/Errors in many other programming languages (say java, ruby) always provide stacktrace/backtrace information.
In JavaScript unhandled Errors get caught by
It seems that the error object itself will be the fifth parameter supplied to onerror. http://html5.org/tools/web-apps-tracker?from=8085&to=8086
http://www.whatwg.org/specs/web-apps/current-work/ - section 7.1.6.1
The error object, which would contain a "sanitized" stack trace, is now being passed in as the fifth parameter to onerror
in Chrome. You can read about it here: https://code.google.com/p/chromium/issues/detail?id=147127
At the time of this writing it's in Canary and should be pushed out to the stable Chrome release sometime later this month. If you're running Canary you can test it like so:
window.onerror = function (message, file, line, column, errorObj) {
if(errorObj !== undefined) //so it won't blow up in the rest of the browsers
console.log('Error: ' + errorObj.stack);
}
You can see as per the spec that they've also added the column number which IE 10 has also implemented.
You can also checkout the Mozilla discussion: https://bugzilla.mozilla.org/show_bug.cgi?id=355430