如何将console.log(object)的输出保存到文件中?

我尝试使用JSON.stringify(object) ,但它不会落在整个结构和层次结构。

另一方面console.log(object)这样做,但我不能保存它。

console.log输出中,我可以逐个展开所有的孩子,然后select复制/粘贴,但是结构对于那个来说是很大的。

更新: 你现在可以右键单击

在“控制台”面板中右键单击>另存为,将logging的消息保存到文件中。

原始答案:

您可以使用下面显示的这个devtools片段创build一个console.save方法。 它从input创build一个FileBlob,然后自动下载它。

 (function(console){ console.save = function(data, filename){ if(!data) { console.error('Console.save: No data') return; } if(!filename) filename = 'console.json' if(typeof data === "object"){ data = JSON.stringify(data, undefined, 4) } var blob = new Blob([data], {type: 'text/json'}), e = document.createEvent('MouseEvents'), a = document.createElement('a') a.download = filename a.href = window.URL.createObjectURL(blob) a.dataset.downloadurl = ['text/json', a.download, a.href].join(':') e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null) a.dispatchEvent(e) } })(console) 

资料来源: http : //bgrins.github.io/devtools-snippets/#console-save

您可以使用“Chrome开发者工具”命令行API“copy()”将指定对象的string表示forms复制到剪贴板。

如果你有很多的对象,那么:你可以实际上“JSON.stringify()”所有的对象,并继续把它们附加到一个string。 现在使用copy()方法将完整的string复制到剪贴板。

如果你有一个对象logging:

  • 右键单击控制台中的对象,然后单击“存储为全局variables”
  • 输出将会像“temp1”
  • 键入控制台副本(temp1)
  • 粘贴到你最喜欢的文本编辑器

有一个开源的JavaScript插件,只是 – debugout.js

Debugout.jslogging并保存console.log,以便应用程序可以访问它们。 完全披露,我写了。 它适当地格式化不同的types,可以处理嵌套的对象和数组,并且可以select在每个日志旁边放一个时间戳。 它也在一个地方切换实况logging。

右键单击控制台..点击另存为..其简单..你会得到一个输出文本文件

您可以使用库l2ihttps://github.com/seriyvolk83/logs2indexeddb )来保存您放入console.log所有内容,然后调用

 l2i.download(); 

用日志下载文件。

还有另一个开源工具,它允许你保存所有的console.log输出到你的服务器上的一个文件 – JS LogFlush (plug!)。

JS LogFlush是一个集成的JavaScript日志解决scheme,其中包括:

  • 跨浏览器UI无需更换console.log – 在客户端。
  • 日志存储系统 – 在服务器端。

演示

很多很好的答案,但为什么不只是使用JSON.stringify(your_variable)? 然后通过复制和粘贴(删除外部引号)的内容。