В Firefox я могу получить трассировку стека исключения, используя exception.stack
.
Есть ли способ получить это и в других браузерах?
Изменить: я действительно хочу сохранить трассировку стека автоматически (если возможно) и не отлаживать ее в то время (т.е. я знаю, как получить трассировку стека в отладчике).
Error: ReferenceError: fdasmkl is not defined at <anonymous>:6:7
вместо"Error: ReferenceError: fdasmkl is not defined at eval (eval at <anonymous> (:6:1), <anonymous>:1:1) at <anonymous>:6:1"
function foo() { fdasmkl } try { foo() } catch(e) { console.log(e.stack) }
немедленноУ Webkit теперь есть функции, обеспечивающие трассировку стека:
Веб-инспектор: понимание трассировок стека , опубликовано Юрием Семихатским в среду, 20 апреля 2011 г., в 7:32 (webkit.org)
Из этого сообщения:
источник
Если вам нужна трассировка стека строк, я бы пошел с ответом insin : stacktrace.js . Если вы хотите получить доступ к частям stacktrace (номера строк, имена файлов и т. Д.), Stackinfo , который фактически использует stacktrace.js под капотом.
источник
Не совсем, по крайней мере, не легко.
В IE вы можете отлаживать процесс браузера с помощью MS Script Debugger (который по какой-то причине является компонентом Office) или Visual Studio, а затем вы можете видеть стек на точках останова.
источник
Вы должны попробовать хорошую библиотеку с открытым исходным кодом TraceKit, которая пытается создать трассировку стека для необработанных исключений JavaScript во всех основных браузерах. Вы можете узнать больше о Tracekit
https://github.com/csnover/TraceKit/
PS : Если вы ищете сервис (используя Tracekit) с хорошим пользовательским интерфейсом, вы можете попробовать Atatus
источник