Google Apps Script V8赋值为null将取消调试



变量赋值为null会导致调试取消该行的执行。下面是一个重现问题的测试脚本:

function myFunction() {
var a = "Hallo";
Logger.log("a=" + a);
var b = null;
Logger.log("b=" + b);
}

当调试此脚本时,会在"var b=null;"行取消执行。日志输出为:

Mar 11, 2020, 8:52:49 PM    Info    a=Hallo
Mar 11, 2020, 8:52:54 PM    Info    Execution cancelled.

当在调试模式下跨过线路并运行经过线路时,结果是相同的。然而,在后一种情况下,屏幕顶部会闪烁一条红色错误消息,上面写着:"很抱歉,发生了服务器错误。请稍等片刻,然后重试。"…等待和重试没有区别。[在Jeff在下面发表评论后,今天再次尝试了它,但只能在调试模式下跨过分配行来重新创建它]

当脚本正常运行(不在调试中(时,它会成功完成。

我找到了临时解决方法:

临时(仅用于调试(删除取null值的变量的var

请注意:没有var的变量会变为全局变量,所以您可能会意外地更改具有相同名称的全局变量的值。

但是如果没有var,您将无法在调试器中看到您的变量。因此,另一种解决方法是使用if语句测试变量,以查看调试器中的值:

更改:

var b = null;

临时(仅用于调试(到:

b = null;
if (b==null){
var b0='null';
} else {
var b0=b;
}

并在调试器中观察b0变量

相关内容

  • 没有找到相关文章

最新更新