IE8で調べる必要があるオブジェクトがあります。開発者ツールとconsole.log
、Firebugで同等のもの。ただし、オブジェクトをログに出力すると:
console.log("Element: ", element);
console.log(element);
私は文字列を取得するだけです
LOG: Element: [object Object]
クリック可能で調査可能なダンプの代わりに。
Firebugのように、オブジェクトをログにダンプし、そのメンバーを調べることは可能ですか?
調べたい要素が非常に大きいため、ブラウザがクラッシュするため、自家製のdump()関数を使用できません。
私が役立ったと思うテクニックの1つを次に示します。
ちょっとしたトピック(DOM要素では機能しないため)ですが、 JSON.stringify(object )を使用すると便利ですかなり読みやすいオブジェクトのJSON文字列を取得します。
@Chrisは@Andyの答えを簡単な解決策でコメントしました。IEのコンソールにすべての詳細を出力するには、console.dir(myObj)
を使用します。クリスありがとう!
厄介なコードを扱っていて、console.logが利用できない場合は、コンソールでこれを試してください:
out = []; for (i in your_object) { out.Push(i) } out.join("\n")
Firebug-Lite を使用することをお勧めします。コンソールobjをラップし、ほとんどのfirebugコンソールのようにIEで結果を確認できます。このヘルプを希望します。
このタグをページに追加します。
<script type="text/javascript" src="https://getfirebug.com/firebug-lite-debug.js"></script>
そして、物事は機能します。
私のシステムで動作します。
注:この解決策を試してください。
既存のHMTL要素にダンプする
IE 11は1027文字の後にコンソール行を削除しています:-/ダンプする大きなオブジェクト(12,000文字)がある場合、既存のDIV-Oder TextArea-Elementにダンプしましたコンテンツをコピーできる場所。
var str = JSON.stringify(myObject);
$('#existing-element').text(str); // jQuery or
document.querySelector("#existing-element").innerHTML = str; // native JavaScript
少しチャンキーですが、DOMオブジェクトに対して機能します:
console.log( testNode.outerHTML.replace(testNode.innerHTML,"") );
これは本当に古い質問であることは知っていますが、今、これに対する答えを探していました。 IEコンソール(あまり良くない、IMO)を使用することが絶対要件ではない場合、Firebug Liteの使用を検討するかもしれません( http://getfirebug.com/firebuglite )。これは完全なソリューションではなく、そのスクリプトを実稼働環境にプッシュしたくない場合があり、Firebugほどのフル機能ではありませんが、ピンチ時にはかなり良いですIEのようなローエンドブラウザで。