繁体   English   中英

如何替换js堆栈跟踪以包括“行”和“位置”文本?

[英]How to replace js stack trace to include “line” and “position” text?

我们有一个在开发过程中写到屏幕上的javascript堆栈跟踪。

 (OurCustom.js?635095252297740283:14:29)
    at jquery-1.8.3.min.js?634937263102341783:2:11602
    at Function.v.extend.map (jquery-1.8.3.min.js?634937263102341783:2:15448)

我正在尝试从中替换最后两个冒号

(OurCustom.js?635095252297740283:14:29)

(OurCustom.js?635095252297740283 line 14 pos 29)

我的尝试不起作用。 什么都没有取代。

stackMessage = stackMessage.replace(/_(:\d*)(:\d*)_/g, "line $1 pos $2");

编辑:顺便说一句,这就是我获取堆栈跟踪的方式。 (答案正确)

catch (err)
{
    var stackMessage = (err.stack || err.stacktrace || "")
                       .replace(/:(\d*):(\d*)/g, " line $1 pos $2");
...
{

问题出在正则表达式中的那些下划线。 你应该用

stackMessage = stackMessage.replace(/:(\d*):(\d*)/g, " line $1 pos $2")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM