Trong Internet Explorer 9 (và 8), console
đối tượng chỉ được hiển thị khi các công cụ dành cho nhà phát triển được mở cho một tab cụ thể. Nếu bạn ẩn cửa sổ công cụ dành cho nhà phát triển cho tab đó, console
đối tượng vẫn được hiển thị cho mỗi trang bạn điều hướng đến. Nếu bạn mở một tab mới, bạn cũng phải mở các công cụ dành cho nhà phát triển cho tab đó để console
đối tượng được hiển thị.
Đối console
tượng không phải là một phần của bất kỳ tiêu chuẩn nào và là một phần mở rộng cho Mô hình Đối tượng Tài liệu. Giống như các đối tượng DOM khác, nó được coi là một đối tượng máy chủ và không bắt buộc phải kế thừa từ Object
, cũng như các phương thức của nó Function
, giống như các hàm và đối tượng ECMAScript gốc. Đây là lý do apply
và call
không được xác định trên các phương pháp đó. Trong IE 9, hầu hết các đối tượng DOM đã được cải thiện để kế thừa từ các loại ECMAScript gốc. Vì các công cụ dành cho nhà phát triển được coi là một phần mở rộng cho IE (mặc dù là phần mở rộng tích hợp), rõ ràng chúng không nhận được những cải tiến giống như phần còn lại của DOM.
Để biết giá trị của nó, bạn vẫn có thể sử dụng một số Function.prototype
phương pháp trên console
các phương thức với một chút bind()
phép thuật:
var log = Function.prototype.bind.call(console.log, console);
log.apply(console, ["this", "is", "a", "test"]);
//-> "thisisatest"