console.log是否仅在您使用网站上的检查时执行?

问题描述 投票:0回答:2

我的脚本中有很多console.log,当我没有打开控制台时,我不希望它们放慢我的脚本的速度。

所以我的问题是,它们在控制台关闭时是否执行? 因为如果这样做,我将不得不将其注释掉,然后在每次需要看到它们时都取消注释它们。

javascript console console.log userscripts
2个回答
0
投票

是的,无需在网页上打开控制台即可执行代码中的console.log()


0
投票

在我所知道的所有浏览器中,即使关闭了控制台,它们仍会执行-例如,尝试在关闭控制台的情况下运行以下代码,然后在5秒钟后打开控制台,您会发现控制台确实已经关闭了。填充文本:

 setInterval(() => { console.log('log'); }, 1000); 

console.log对性能的影响几乎为零,但是如果您想要一种简单的方法来切换在console.log调用打印到控制台之间执行任何操作,则可以在用户脚本的顶层定义一个console变量,具有不执行任何操作的log功能,因此在用户脚本范围内隐藏了 window.console.log

 const console = { log: () => void 0 }; console.log('foo'); 

要再次正常打印到控制台,只需注释掉const console...行(或使用布尔变量doPrintToConsole或其他内容)即可。

这不会阻止本地页面脚本进入console.log ging。 (如果要阻止本机页面脚本这样做,请改写window.console.log );

© www.soinside.com 2019 - 2024. All rights reserved.