我最近做了一個奇怪的問題,如果用我的代碼中,但做工精細,直接使用控制檯或使用window.console.log
其中console.log
不輸出任何東西。的console.log()不工作在所有瀏覽器
window.console.log(console);
window.console.log(window.console);
console.log("test1"); // (won't work)
window.console.log("test2");
輸出繼電器:
如果我定義安慰自己的控制檯之前的代碼:
var console = window.console;
window.console.log(console);
window.console.log(window.console);
console.log("test1");
window.console.log("test2");
輸出繼電器:
而奇怪的事情,如果我定義安慰自己後的代碼
window.console.log(console);
window.console.log(window.console);
console.log("test1");
window.console.log("test2");
var console = window.console;
輸出繼電器:在回答之前
注:
這不是一個瀏覽器特定的問題,因爲每個瀏覽器的輸出都是一樣的(我檢查過chrome/firefox/safari/opera)。
它沒有被覆蓋,因爲日誌
console
&window.console
返回相同的確切對象(請參見屏幕截圖)。
如果發生這種情況,您可能做錯了事。我似乎無法重現它,所以你的代碼必須覆蓋一些東西,或者在窗口出於某種原因而不是「全局」範圍等等的範圍中是最奇怪的。 – adeneo
以下是@adeneo所說的,你得到了什麼你在你的控制檯輸入'this'? – DontVoteMeDown
'window.console.log(console.log.toString());'show? – epascarello