Как перехватить исключения/ошибки JavaScript?(Чтобы зарегистрировать их на сервере)

StackOverflow https://stackoverflow.com/questions/779644

Вопрос

Дубликат:


Как мне записывать ошибки в JavaScript?Я не могу обернуть каждую строку javascript в блок try catch.

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

Это было полезно?

Решение

Я использую эту функцию во всех своих проектах:

window.onerror = function(m,u,l){
    jQuery.post("ajax/js_error_log.php",
        { msg: m,
          url: u,
         line: l,
       window: window.location.href });
    return true};

Убедитесь, что это самый первый JavaScript-скрипт, который получает браузер, или, по крайней мере, он предшествует любому коду, потенциально вызывающему ошибки.Конечно, требуется jQuery, но при желании вы можете кодировать функции ajax на чистом JavaScript.

Пожалуйста, обрати внимание:это не поможет вам, если у вас есть синтаксическая ошибка.Весь javascript мгновенно умирает, если возникает синтаксическая ошибка.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top