Jak wyłapać wyjątki/błędy javascript? (Aby zalogować się na serwerze)

Duplikat:


Jak zrobić rejestrowanie błędów w javascript? Nie mogę zawinąć każdej linii javascript w try catch block.

Mówię o błędach, które na przykład w IE, pokaże błąd na stronie wiadomości i mają linię I znak przyczyną błędu. Jeśli tylko wykombinuję, jak to złapać błąd po stronie klienta, mogę po prostu zalogować błąd na serwerze za pomocą połączenia ajax.

Author: Community, 2009-04-22

1 answers

Używam tej funkcji we wszystkich moich projektach:

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};

Upewnij się, że jest to pierwszy javascript, który przeglądarka otrzymuje lub przynajmniej poprzedza jakikolwiek potencjalnie powodujący błędy kod. Wymaga oczywiście jQuery, ale możesz kodować funkcje ajax w czystym javascript, jeśli chcesz.

Uwaga: to nie pomoże, jeśli masz błąd składni. Cały javascript natychmiast umiera, jeśli wystąpi błąd składni.

 27
Author: Andrew Ensley,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-22 23:26:44