Internet Explorer 9 中的Window.console.log 存取
在Internet Explorer 9 中,window.console.log 函數的行為與其他瀏覽器。要確定它何時定義,我們必須考慮以下場景:
window.console.log 何時定義?
window.console.log 僅在下列情況下才可存取開發人員工具已針對目前分頁開啟。即使關閉開發人員工具視窗後,當您導覽至同一分頁中的不同頁面時,控制台物件仍然可用。但是,如果您開啟新選項卡,除非您明確開啟該選項卡的開發人員工具,否則控制台物件將不會公開。
Function.prototype 方法和控制台物件
即使定義了window.console.log,它的window.console.log.apply 和window.console.log .call 方法也沒有定義。這是因為 IE9 中的控制台物件不是標準 DOM 對象,而是擴充。因此,它不繼承自 Object 原型,也不具有從 Function 原型繼承的方法。
但是,您仍然可以透過利用bind() 函數在控制台方法上使用一些Function.prototype 方法:
var log = Function.prototype.bind.call(console.log, console); log.apply(console, ["this", "is", "a", "test"]); // Output: "this is a test"
透過將console.log 函數綁定到Function.prototype ,您可以存取apply() 方法並使用參數執行控制台日誌。
以上是如何在 Internet Explorer 9 中有效使用「window.console.log」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!