Window.console.log Internet Explorer 9 でのアクセス
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 中国語 Web サイトの他の関連記事を参照してください。