2016-01-13 252 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