我有一个简单的项目,它执行一些通用数组计算并将结果返回到网格中。我需要一种简短的方法来扫描数组以获得最大值,并尝试使用它:
var max = Math.max.bind( Math.max );
var vector_max = Function.apply.bind( max, null );
现在,当我没有调试时,这很有效。但是,如果我围绕任何语句包装测试函数,比如说:
function tester() {
var r = 0;
return r;
}
...,在此函数的任何位置设置断点,然后单击debug,我收到错误:
"Typeerror: This operation is not allowed. (line XXX, file xxx)"
即使在附加到空白工作表的全新脚本中也会发生这种情况。当然,谷歌没有关于他们的脚本调试器的文档,也没有任何限制的参考,因此,我完全处于黑暗中。
有什么想法吗?
答案 0 :(得分:2)
我也可以重现这个。它确实看起来像是调试器中的一个错误! :)
您应该在Apps Script issue tracker中报告此情况。同时使用vector_max
函数的另一个实现来调试代码。例如:
function vector_max(a){ return a.reduce(function(r,v){ return r < v ? v : r; }, -Infinity); }