Блог веб разработки статьи | видеообзоры | исходный код

Блог веб разработки статьи | видеообзоры | исходный код

webfanat вконтакте webfanat youtube

JavaScript ошибки

 JavaScript ошибки

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

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

Давайте рассмотрим следующий js-код:

console.log(res);

Как видно мы выводим необъявленную переменную в консоль браузера и тут же получаем ошибку.

Что то на подобии этого Uncaught ReferenceError: frfr is not defined...

Давайте теперь поподробнее познакомимся со свойством onerror.

Это свойство объекта window, если ему присвоить функцию, то эта функция будет вызываться во всех случаях когда будет возникать ошибка. Если обработчик onerror возвращает true, то это будет говорить о том что ошибка обработана, и никаких сообщений о ней выведено не будет.

Давайте запишем следующее:

window.onerror = function(msg,url,line){

    return true;

};
console.log(res);

как видите никакой ошибки в консоль не выводится это происходить за счет того что мы вернули true в обработчике onerror.

Теперь поговорим о том как извлечь информацию об ошибке или ошибках:

Рассмотрим следующий код:

window.onerror = function(msg,url,line){
     console.log("Ошибка: "+msg+"\n на странице: "+url+'\n в строке: '+line);
     return true;
};
console.log(res);

Если посмотреть теперь в консоль браузера теперь мы можем увидеть следующую информацию об ошибке: это название ошибки, страница где произошла данная ошибка и строка.

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

Как я вижу такой вывод ошибок в консоль намного легче воспринимать чем стандартный.

Что нужно учитывать при использовании обработчика ошибок:

Как вы наверное заметили, обработчик обрабатывает все ошибки которые возникают в нашей js-коде если мы объявили его в самом начале JavaScript-кода.

Ошибки такого рода файл с таким путем не найден не обрабатываются.

Вот и все что я хотел вам рассказать про свойство onerror. Надеюсь данная статья хоть и краткая, но была для вас содержательной! Удачи!

Оцените статью:

Статьи

Комментарии

Внимание!!! Комментарий теперь перед публикацией проходит модерацию

Все комментарии отправлены на модерацию

Реклама

Запись экрана

Данное расширение позволяет записывать экран и выводит видео в формате webm