我有一个简单的项目,它执行一些通用数组计算并在网格中返回结果。我需要一个简短的方法来扫描数组的最大值并尝试使用这个:
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)"
即使在附加到空白工作表的全新脚本中也会发生这种情况。当然,Google 没有关于他们的脚本调试器的文档,也没有提到任何限制,所以,我完全一无所知。
有什么想法吗?
最佳答案
我也可以重现这个。它确实看起来像是调试器中的错误! :)
您应该在 Apps Script issue tracker 中报告此事.同时为您的 vector_max
函数使用另一个实现来调试您的代码。例如:
function vector_max(a){ return a.reduce(function(r,v){ return r < v ? v : r; }, -Infinity); }
关于javascript - 脚本调试器报告 "operation not allowed",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26172459/