私は、JavaScriptオブジェクトをログに記録するために、JavaScriptでconsole.logステートメントを実行しています。そのオブジェクトがJavaScriptコードとしてコピーされるようになったら、どうすればよいのでしょうか。私がやろうとしているのは、ファイルがサーバーなしでローカルに実行できるように、XMLフィードを解析するためにajaxを使用して作成されたオブジェクトを静的なjavascriptオブジェクトに変換することです。あなたが私がやろうとしていることを見ることができるように、私はクロムインスペクタウィンドウにオブジェクトのスクリーンショットを含めました。
JSON.stringify()
を試してください。結果の文字列をコピーします。
コンソールでcopy(JSON.stringify(Object_Name));を使用して、オブジェクトをクリップボードにコピーできます。
例: - コンソールに以下のコードをコピーして貼り付け、Enterキーを押します。それでは、(Windowsの場合はCTRL + V、Macの場合はCMD + V)貼り付けてみてください。{"name": "Daniel"、 "age":25}
var profile = {
name: "Daniel",
age: 25
};
copy(JSON.stringify(profile));
オブジェクトを右クリックして[グローバル変数として保存]を選択すると、Chromeでこれを実現できます。 http://www.youtube.com/watch?v=qALFiTlVWdg
以下の手順に従ってください。
JSON.stringify(temp1)
」と入力します。オブジェクトをリクエストで送信した場合は、[Chrome] - > [ネットワーク]タブからコピーできます。
ペイロードを要求 - >ソースを表示
「グローバル変数として保存」を使用しても機能しますが、オブジェクトの最終インスタンスのみが取得され、オブジェクトがログに記録されている瞬間は取得されません。変更された時点の正確な時点でオブジェクトを取得するには、これを使用します。
function logObject(object) {
console.info(JSON.stringify(object).replace(/,/g, ",\n"));
}
こんな感じで….
logObject(puzzle);
データにカンマが含まれている場合は、.replace(/./ g、 "、\ n")正規表現を削除してください。
これは、再帰的なWindow
およびNode
オブジェクトを除外することで、深いオブジェクトを文字列化するのに役立ちます。
function stringifyObject(e) {
const obj = {};
for (let k in e) {
obj[k] = e[k];
}
return JSON.stringify(obj, (k, v) => {
if (v instanceof Node) return 'Node';
if (v instanceof Window) return 'Window';
return v;
}, ' ');
}
そう、。私はこの問題を抱えていました。私が得た以外は[オブジェクトオブジェクト]
私はあなたが再帰でこれをすることができると確信しています、しかしこれは私のために働きました:
これが私のコンソールでしたことです。
var object_that_is_not_shallow = $("all_obects_with_this_class_name");
var str = '';
object_that_is_not_shallow.map(function(_,e){
str += $(e).html();
});
copy(str);
次にエディタに貼り付けます。