JavaScript Инструкция try | catch / finally | CODECAST
ES3

Инструкция try | catch / finally

Синтаксис:
try { код } catch(err) { код в случае ошибки } finally { код в любом случае. }


Инструкция try/catch/finally перехватывает ошибки при попытке выполнить код,
заключенный в данную конструкцию и позволяет продолжать выполнение целостной программы, не смотря на возникновение ошибки.

Если код, размещенный в блоке try выполняется без ошибок - блок catch игнорируется и
выполнение программы проходит дальше.

В случае возникновения ошибки - выполнение кода в блоке try прерывается и запускается
код в блоке catch перед продолжением выполнения программы.

try - блок основного кода, который необходимо выполнить и где предполагается возникновение ошибки.

catch - блок кода, выполняемый в случае ошибки. Обычно здесь описывается отображение ошибки.
Этот блок имеет параметр err (название параметра может быть любым) - он ссылается на объект Error.

finally - данный блок кода выполняется независимо от результатов исполнения try | catch.

Последние два параметра сами по себе не обязательны, но один из них должен быть в связке с блоком try.

Более подробно про исключения и обработку ошибок читайте здесь

JavaScript | MDN


Пример:

        
try {

  //код сработал без ошибок - 

} catch(err) {

  //поэтому данный блок игнорируется.

}

//программа продолжает выполнение


try {

  //код сработал без ошибок - 

} catch(err) {

  //поэтому данный блок игнорируется.

} finally {

  //данный блок выполняется в любом случае.

}

//программа продолжает выполнение


try {

  //код сработал с ошибкой

} catch(err) {

  //поэтому данный блок будет выполняться:

  console.log(err.name);
  console.log(err.message);
  console.log(err.stack);

}