poppel
poppel

Reputation: 1593

JS - how to prevent script from stopping after thrown error

How can I prevent the script from stopping after an error has been thrown? Is there something like exception handling in JS?

Console text

 Not allowed to load local resource: file:///C:/Users/Temp/image.png 

Upvotes: 2

Views: 4354

Answers (4)

AstroCB
AstroCB

Reputation: 12367

You can use a try/catch/finally block to handle errors:

try {
  // Whatever you need
} catch(error) {
  // Handle error if one occurs
} finally {
  // Last resort
}

Note that you can have multiple catch blocks in-between your try and finally as needed.

Here's some more information.

Upvotes: 0

andHapp
andHapp

Reputation: 3207

Javascript does have exception handling. There are two possible types of error you can encounter:

1) Places in your application where you proactively guard against errors being thrown, for example, AJAX request. You can handle them like this:

try {
  AJAX-code or other code susceptible to errors
} catch(error){
  // Log error 
}

2) Script errors or compile-time error, for example, undefined variables. In browsers, window.onerror is a global event handler which is called on script or compile errors. However, it's implementation is inconsistent across browsers. You can use it like this:

window.onerror = function(message, url, lineNo) {
   // Code to handle the error
}

The main problem with onerror is that no stack trace is passed through which is not very helpful. However, Chromium has added column number and errorObj, so hopefully other browsers will implement the same in near future.

Upvotes: 5

shoen
shoen

Reputation: 11865

Sure, wrap your code inside try/catch:

try
{
  //Run some code here
}
catch(err)
{
 //Handle errors here
}

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/try...catch

Upvotes: 0

jedison
jedison

Reputation: 976

There surely is: try {} catch (exception) {}

Upvotes: 0

Related Questions