サードパーティのアドオン/アプリケーション、またはJavaScriptオブジェクトのスクリプトデバッガーでオブジェクトマップのダンプを実行する方法はありますか?
ここに状況があります...私はメソッドが2回呼び出され、そのたびに何かが異なります。何が違うのかはわかりませんが、何か違います。したがって、ウィンドウ(または少なくともwindow.document)のすべてのプロパティをテキストエディターにダンプできれば、2つの呼び出しの状態を単純なファイルdiffで比較できます。考え?
回答:
Firebug +console.log(myObjectInstance)
[object Object]。あまり役に立たない
console.log("my object: %o", myObj)
そうしないと、文字列表現が表示されることがあります。
[object Object]
またはそのようなもの。
my object: %oます。あまり
function mydump(arr,level) {
var dumped_text = "";
if(!level) level = 0;
var level_padding = "";
for(var j=0;j<level+1;j++) level_padding += " ";
if(typeof(arr) == 'object') {
for(var item in arr) {
var value = arr[item];
if(typeof(value) == 'object') {
dumped_text += level_padding + "'" + item + "' ...\n";
dumped_text += mydump(value,level+1);
} else {
dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
}
}
} else {
dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
}
return dumped_text;
}
if (level > 10) return level_padding + '<< too deep >>';
Chrome、Firefox、またはIE10を使用している場合は、コンソールを拡張して使用してください
(function() {
console.dump = function(object) {
if (window.JSON && window.JSON.stringify)
console.log(JSON.stringify(object));
else
console.log(object);
};
})();
簡潔なクロスブラウザソリューション。
ただ使用する:
console.dir(object);
あなたは素晴らしいクリック可能なオブジェクト表現を得るでしょう。ChromeとFirefoxで動作します
console.dir({bar:"foo"}); ます。オブジェクトはtoStringメソッドを上書きしますか?
読みやすくするために、次のようにオブジェクトをjson文字列に変換できます。
console.log(obj, JSON.stringify(obj));
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
Chromeで、3つのドットをクリックし、[その他のツール]をクリックして、[開発者]をクリックします。コンソールで、console.dir(yourObject)と入力します。このリンクをクリックして、サンプル画像を表示します