【问题标题】:Can you print JavaScript variables from a Visual Studio 2008 Tracepoint?您可以从 Visual Studio 2008 Tracepoint 打印 JavaScript 变量吗?
【发布时间】:2009-03-12 18:35:04
【问题描述】:

在了解了如何使用 Visual Studio 的 Tracepoint 功能打印出调试消息后,我很想知道它是否适用于 JavaScript 文件。到目前为止,它有,也没有。

如果我在 VS 2008 中编辑 .js 文件,我可以单击边距来创建断点。然后我可以右键单击断点并选择“当命中时”,然后出现对话框来定义操作。

我选择“打印消息”和“继续执行”。这样,断点就变成了一个跟踪点,并在 ASP.Net 程序在调试中运行时将消息打印到输出窗口。

这本身就很酷。但是,在 C# 代码中,我可以通过将变量括在 {} 中来将它们放入打印的消息中。所以我可以说“在函数 $FUNCTION,x = {x}”。当我尝试使用 JavaScript 跟踪点执行此操作时,无论我在括号中添加什么内容,它都只会显示“variable 未定义”。

除了“你在这里”类型的消息之外,还有什么方法可以在 JavaScript 跟踪点中打印有意义的信息?

我的意图是放入可以在调试中打印到输出控制台的计时代码,但不必在发布时注释掉。

它至少有点支持 JavaScript,因为如果我使用它是内置变量,例如 $FUNCTION 作为函数名,它可以工作。实际上我只是让它为 $FUNCTION 打印“JScript 匿名函数”,但它是在一个匿名函数中。如果有 $TIMESTAMP,我的状态会很好。

【问题讨论】:

    标签: asp.net javascript visual-studio debugging


    【解决方案1】:

    没有$TIMESTAMP,但有$TICK。它以十六进制打印毫秒计数“tick”,所以它看起来像这样:

    Document Ready Start - 0x890A27
    Document Ready End - 0x890E7C
    

    所以一点点计算器工作就可以找出两者之间的区别。

    仍然不知道如何评估 JavaScript 变量...

    更新:

    它不如使用跟踪点那么好(因为您实际上并没有为它们添加东西到代码中),但是 Sys.Debug.trace() 可以满足我对计时代码部分的要求。

    【讨论】:

      猜你喜欢
      • 2021-05-26
      • 1970-01-01
      • 1970-01-01
      • 2016-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多