2016-01-13 256 views
24

当输出信息到控制台,也显示源代码(在Chrome开发者工具是右侧):如何在控制台中隐藏日志消息的来源?

console.log("Foo");       //Source 
Foo        test.js:1 //Output 

然而,一些网站上,消息显示没有源显示等作为Facebook

Console screenshot on Facebook.com

有上Chrome Console API Reference一看对面有一吨的不同输出的例子,但个个都显示的信号源。

如何隐藏控制台输出的来源(.js页码和行号)?


编辑:只是为了澄清,这是这个问题的答案控制台如何禁用标准用户输入(和它的答案解释它是如何工作的)不是How does Facebook disable the browser's integrated Developer Tools?重复。我具体询问不显示源文件和行的美学。

+0

出于兴趣,什么网址,你看到你在你的形象已经显示的控制台输出?我在Chrome浏览器中访问facebook.com时看不到这一点。 –

+0

您必须先登录才能看到该消息。 – Ben

回答

22

他们使用setTimeout从源头上分离:

setTimeout(console.log.bind(console, '\n%c' + s[0], s[1])); 
+0

@Cerbrus:这是从网站上运行的JS。似乎为他们工作。 –

+0

是的,我注意到了。我认为这是行不通的,因为我从facebook.com上打开的一个控制台运行它,这打破了答案。 – Cerbrus

+0

's [0]'和's [1]'是什么意思?消息和CSS风格,我认为? – Ben