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


当前回答

所以,。我有这个问题。除了我得到了[object object]

我相信你可以用递归来做这个,但这对我来说是可行的:

以下是我在控制台所做的:

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);

然后粘贴到编辑器中。

其他回答

右键单击要存储的数据

首先,右键点击你想要存储的数据->选择“存储为全局变量” 新的temp变量如下所示:(temp3变量): 控制台中出现新的临时变量 第二次使用命令复制(temp_variable_name),如图片: 在这里输入图像描述 之后,您可以将数据粘贴到任何您想要的地方。 希望有用的/

这将通过省略递归的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;
  }, ' ');
}

如果你已经发送了一个请求对象,你可以从Chrome ->网络选项卡复制它。

Request Payload - >查看源

更新- Chrome 89

右键单击->复制对象

来源:(https://developers.google.com/web/updates/2021/01/devtools?utm_source=devtools)

同样来自调试器

所以,。我有这个问题。除了我得到了[object object]

我相信你可以用递归来做这个,但这对我来说是可行的:

以下是我在控制台所做的:

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);

然后粘贴到编辑器中。