在 WebStorm (2016.1) 中调试时,调试器在console.log(arguments)
. 这是一个例子:
function breakDebug() {
console.log(arguments);
}
breakDebug();
console.log("still kickin'"); // WS will not stop on breakpoint here
这可以通过在调用方转换arguments
为某种不会阻塞调试器(array
或其他)的类型来解决,如下所示:object
function digestible(args) {
return Array.prototype.slice.call(args);
}
function breakDebug() {
console.log(digestible(arguments)); // this is cumbersome
}
breakDebug();
console.log("still kickin'"); // this time debugger stops
// on breakpoint here
不是将参数显式转换为数组,而是可以对console
对象执行一些安全的伏都教,使第一个片段不会破坏调试器?所谓安全,我的意思是遵守像我这样的 JS n00b 所不知道的所有最佳实践。
作为一个附带问题,我应该向 JetBrains 报告这个问题吗?