我已经构建了一个自定义日志记录实用程序,它显示了日志消息和日期时间。我想在源代码中添加一个调用函数的行号。
有没有办法确定特定javascript函数的哪一行HTML源被触发?
答案 0 :(得分:7)
自己编写了一个日志库(log4javascript)后,我考虑过同样的问题,这是我的想法:
问题是,为了获得您想要的信息,您需要在相关行上创建的Error
对象。在日志记录实用程序中创建Error
只会直接为您提供日志记录实用程序代码中特定行的文件名和行号,而不是用于进行日志记录调用的代码行。我能想到的唯一解决方法是解析stack
(或Opera中的Error
属性)的message
属性,这有几个问题:
Error
并为每次日志调用解析其堆栈跟踪将增加显着的性能开销。出于log4javascript的目的,我认为它不值得实现,但为了您自己的需要,您可能会认为这是值得的。