我在我的javascript中做一个console.log语句,以记录一个javascript对象。我想知道是否有一种方法,一旦完成-复制该对象作为javascript代码。我要做的是转换使用ajax创建的对象,将xml提要解析为静态javascript对象,以便文件可以在本地运行,而不需要服务器。我在chrome检查器窗口中包含了对象的截图,这样你就可以看到我正在尝试做什么。


当前回答

在Chrome 89或更高版本中,您可以简单地右键单击控制台中的对象并选择复制对象(ref)。这也工作在一些其他地方在Chrome开发工具,例如,同时调试或内部响应标签的网络请求。

另一个选择是使用copy命令原样:

var x = { a: 1, b: 2 };
copy(x);

原来的答案

其他回答

在Chrome的控制台中右键单击一个对象,从上下文菜单中选择存储为全局变量。它将返回类似temp1这样的变量名。 Chrome也有一个copy()方法,所以copy(temp1)在控制台应该复制该对象到你的剪贴板。

注意递归对象:如果你试图复制一个递归对象,你会得到[object object]。解决方法是尝试copy(JSON.stringify(temp1)),对象将作为有效的JSON完全复制到剪贴板,因此您可以使用许多资源中的一种来格式化它。

如果你得到Uncaught TypeError: conversion circular structure to JSON消息,你可以使用JSON。Stringify的第二个参数(它是一个过滤器函数)来过滤掉有问题的循环属性。更多细节请参阅Stack Overflow的答案。

在Chrome 89或更高版本中,您可以简单地右键单击控制台中的对象并选择复制对象(ref)。这也工作在一些其他地方在Chrome开发工具,例如,同时调试或内部响应标签的网络请求。

另一个选择是使用copy命令原样:

var x = { a: 1, b: 2 };
copy(x);

原来的答案

请遵循以下步骤:

使用console.log从代码中输出对象,如下所示: 右键单击对象,然后单击“存储为全局对象”。Chrome会在此时打印变量的名称。让我们假设它叫做“temp1”。 在控制台中,键入:JSON.stringify(temp1)。 此时,您将看到整个JSON对象作为一个可以复制/粘贴的字符串。 此时,您可以使用http://www.jsoneditoronline.org/等在线工具来修饰字符串。

你可以使用copy(JSON.stringify(Object_Name))将一个对象复制到剪贴板;在控制台。

复制和粘贴下面的代码在您的控制台,并按ENTER。现在,尝试粘贴(CTRL+V for Windows或CMD+V for mac)它到其他地方,你会得到{"name":"Daniel","age":25}

var profile = {
    name: "Daniel",
    age: 25
};

copy(JSON.stringify(profile));

您可以将对象作为字符串进行控制台

var objToString = JSON.stringify(obj)
console.log(objToString );

然后在一个编辑器,如notepad++粘贴输出,然后ehit插件格式

JSFormat