Javascript console.log在调试器的函数中不工作



为了调试一些概念,我在Chrome控制台运行这个:

what = function(){ 
let value = 5
try { 
wrong(); 
} catch(e) { 
console.log('bad'); 
value += 1
}
return value
}
what()
# returns 6

工作如预期,除了console.log('bad')从未发生。

很明显,value = 6而不是5证明了block被调用了

为什么控制台会跳过console.log ?我很确定我已经将JS注入到console.log工作的应用程序中,所以这可能是控制台窗口本身的设置。Firefox的行为是相同的。

我最好的猜测是,因为它在两个平台上都不起作用,它是一个阻止它的扩展——从另一个stackoverflow帖子来看,它可能是firebug lite或您通过过滤器不小心禁用了它。

如果这些都不工作,我建议尝试一个客人窗口,看看它是否在那里工作。

我不能在我自己的机器上复制这个,以及其他人:Chrome 102.0.5005.61(官方版本)(64位)(队列:102_win_control)

它正在工作!删除最后一行它会起作用的!如果它仍然不起作用,那么它可能被扩展名

阻塞。

最新更新