Ошибки в JavaScript - Типы и обработка ошибок в JavaScript

Содержание:

Anonim

Введение в ошибки в JavaScript

Давайте начнем с обсуждения того, что означает «ошибка» в языке программирования, особенно в JavaScript. Ошибка может быть определена как ошибка, или неправильное утверждение, или неверное истолкование, или ошибка, но это определение не совсем корректно при разработке программы. В программировании ошибка - это часть или часть кода, которая нарушает нормальный ход программы. В любом языке программирования обычно есть три вида ошибок, с которыми можно столкнуться,

  1. Ошибки времени компиляции
  2. Логические ошибки
  3. Ошибки во время выполнения.

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

В JavaScript, если скрипт выдает ошибку, интерпретатор JavaScript останавливает выполнение программы, которая мгновенно отображает эту ошибку в консоли браузера вместе с ошибкой и номером строки, в которой она произошла, в файле. Единственный способ отладить наш JavaScript - это использовать ошибки и предупреждения как можно лучше и найти причину этого.

Типы ошибок в JavaScript

Ошибка может или не может быть фатальной для нашего приложения в зависимости от вида ошибки, с которой мы сталкиваемся. Существует шесть типов ошибок, которые обычно возникают в JavaScript -

  • Ошибка Eval
  • Ошибка диапазона
  • Ошибка ссылки
  • Синтаксическая ошибка
  • Ошибка типа
  • Ошибка URI

Давайте обсудим каждую из этих ошибок подробно.

Имя ошибки

Описание

EvalErrorПроизошла ошибка в функции eval ()
RangeErrorПроизошло число «вне диапазона»
ReferenceErrorПроизошла незаконная ссылка
Синтаксическая ошибкаПроизошла синтаксическая ошибка
TypeErrorПроизошла ошибка типа
URIErrorПроизошла ошибка в encodeURI ()

1. EvalError: Указывает на ошибку в глобальной функции eval (), т.е. функция eval () используется некорректно. Более новые версии JavaScript больше не генерируют эту ошибку, вместо этого используется синтаксическая ошибка.

2. RangeError: эта ошибка выдается, когда параметр или значение (числовое) находится за пределами или превышает допустимый диапазон.

3. ReferenceError: эта ошибка выдается, когда мы ссылаемся на переменную, которая не существует (используется недопустимая ссылка), т.е. эта переменная не была объявлена. Это одна из самых распространенных и часто встречающихся ошибок.

4. SyntaxError: эта ошибка указывает на то, что синтаксис сценария недействителен, т.е. в коде присутствует синтаксически неверное утверждение. Что касается синтаксических ошибок, интерпретируемый язык, такой как JavaScript, не будет их генерировать, пока скрипт не будет загружен и прочитан браузером.

5. TypeError: эта ошибка выдается, когда значение имеет неправильный тип, как ожидалось, или недопустимый тип данных используется для объявления или определения переменной. Пример: выполнение числовых вычислений для строковой переменной или объекта.

6. URIError: Эта ошибка указывает на использование недопустимых символов, которые недопустимы в методах / функциях, связанных с URI (encodeURI () или decodeURI ()).

Обработка ошибок в JavaScript

Когда возникает ошибка, мы знаем, что скрипт прекращает выполнение, если мы не обработаем эти ошибки в самом скрипте, чтобы не нарушить нормальный ход программы. Различные способы, которые мы можем реализовать для обработки этих ошибок:

try …. catch block
try (
// errorneous statement
) catch (err) (
console.error (err)
// stmts
)

в заключение

В некоторых ситуациях существуют определенные разделы сценария, которые необходимо выполнить независимо от того, происходит ли ошибка, и эту часть раздела необходимо записать в блоке finally.

try (
// errorneous statement
) catch (err) (
console.error (err)
// stmts
) finally(
//mandatory statements to run
)

обещания

Обещания используются для обработки асинхронных операций, которые могут привести к ошибке. Они могут управлять несколькими асинхронными операциями и предоставлять лучшие решения по обработке ошибок по сравнению с обратными вызовами и событиями.

var promise = new Promise(
function(resolve, reject)(
//do something
)
);

Пример:

function captureErrorTypes() (
try (
var sum = x + y;
alert(sum);
) catch(error) (
switch (error.name) (
case 'SyntaxError':
alert("caught a " + error.name + ": " + error.message);
//handle error…
break;
case 'RangeError':
alert("caught a " + error.name + ": " + error.message);
//handle error…
break;
case 'ReferenceError':
alert("caught a " + error.name + ": " + error.message);
//handle error…
break;
default:
alert("caught a " + error.name + ": " + error.message);
//handle all other error types here…
break;
)
)
)

Рекомендуемые статьи

Это руководство по ошибкам в JavaScript. Здесь мы обсуждаем ошибки javascript и то, что они означают в любом языке программирования, а также тип, который обычно встречается в javascript. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Работа инкапсуляции в JavaScript
  2. Компиляторы JavaScript
  3. Как работает цикл Loop в Javascript?
  4. Почему JavaScript чувствителен к регистру, а HTML - нет?
  5. Бросок против бросков | 5 главных отличий, которые вы должны знать
  6. 10 лучших версий Java с функциями