我正在尝试查看对象包含的内容
使用console.log(obj)
控制台切断线条,我看不到整个结构。
然后我尝试将其写入文件
fs.writeFile('test', JSON.stringify(obj));
但是我对循环引用有一些错误。
有没有其他方法可以查看对象大声笑?该对象是来自nodejs websocket模块的“连接”。文档非常差,我似乎找不到拥有IP地址的属性:(
答案 0 :(得分:12)
fs.writeFile('test', JSON.stringify(obj));
但是我对循环引用有一些错误。
这就是JSON所发生的事情。 JSON还忽略函数,正则表达式,日期等。
您可以使用util.inspect
,这是Node的console.log()
在内部使用来获取整个对象,然后可以将其写入文件:
var util = require('util');
fs.writeFileSync('test.txt', util.inspect(obj));
如果你想要无限深度和隐藏属性:
util.inspect(obj, { showHidden: true, depth: null })
答案 1 :(得分:4)
使用dir方法。
console.dir(obj)
答案 2 :(得分:1)
你可以使用我相信的方法
console.dir(obj)
欢迎你;)
答案 3 :(得分:0)
我之前从未使用console.dir
,这可能是正确的方法。但是,我一直在做的只是将我想看的内容分配给一个全局变量,然后直接在控制台中使用它。
这样的事情:
var x;
function xyz(){
// Code
x = obj;
}
然后,直接在控制台中,如果你键入x,在xyz运行之后,你就有了你的对象,并且可以使用它的副本,包括查看所有属性并修改它的能力。