首頁 > web前端 > js教程 > 主體

為什麼 Internet Explorer 9 中的 console.log 僅在開發人員工具開啟時才可用?

Linda Hamilton
發布: 2024-11-13 14:55:02
原創
691 人瀏覽過

Why is console.log in Internet Explorer 9 Only Available When Developer Tools are Open?

Internet Explorer 9 中的Console.log:輔助功能和實作

Internet Explorer 9 引入了對console.log 函數的支持,但其可用性取決於某些條件。

可用性window.console.log

僅噹噹前選項卡的開發人員工具視窗處於活動狀態時,window.console.log 函數才會在Internet Explorer 9 中定義。這意味著:

  • 當選項卡的開發人員工具開啟時,可以在該標籤內的所有頁面上存取 console.log。
  • 如果選項卡的開發人員工具關閉,console.log 在該選項卡中的所有頁面上都無法存取。
  • 開啟新分頁需要手動開啟該分頁的開發者工具才能啟用console.log.

缺少console.log.apply 和console.log.call

而window.console.log 是在Internet Explorer 9 中定義的,它的apply 和 call 方法不是。這是因為 IE9 中的控制台物件尚未完全標準化,並且被視為文件物件模型 (DOM) 的擴展。作為宿主對象,控制台物件不需要從 Object 或 Function 繼承方法,這與原生 ECMAScript 物件不同。

使用 bind() 的方法呼叫

儘管如此如果沒有 apply 和 call,仍然可以在控制台方法上使用 Function.prototype 方法。這可以使用bind()方法來實現:

var log = Function.prototype.bind.call(console.log, console);
log.apply(console, ["this", "is", "a", "test"]); // outputs "thisisatest"
登入後複製

以上是為什麼 Internet Explorer 9 中的 console.log 僅在開發人員工具開啟時才可用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板