When catching / handling exceptions in JavaScript, how can I determine what the call stack was when the exception occurred? (and also if possible what the line number was)
try {     // etc... } catch (ex) {     // At this point here I want to be able to print out a detailed exception      // message, complete with call stack, and if possible line numbers. } 
                Simple way, use the Exception. ToString() function, it will return the line after the exception description. You can also check the program debug database as it contains debug info/logs about the whole application.
As with many programming languages, the primary method of dealing with exceptions in JavaScript is the try-catch. In a nutshell, the try-catch is a code block that can be used to deal with thrown exceptions without interrupting program execution.
Each browser handles this differently, so there isn't a universal way to do it. This blog post has some good code to dump a stack trace for most supported browsers. I don't think there is a good way to provide the line number.
If you're looking to debug one function in particular, Firebug has a good stack trace function (vis console.trace()).
Have a look at this.
A way to analyse the available information:
try  {      doInit();  } catch(err)  {      var vDebug = "";      for (var prop in err)      {          vDebug += "property: "+ prop+ " value: ["+ err[prop]+ "]\n";      }      vDebug += "toString(): " + " value: [" + err.toString() + "]";      status.rawValue = vDebug;  } 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With