Node 控制台如何格式化输出 JSON 数据
发布于 10个月前 作者 scorpio 913 次浏览

最近在折腾 node-webkit, 发现 console.log 在命令行界面输出 JSON 数据的时候已经 JSON.parse() 过得数据没有格式化…有办法么…

16 回复

没看明白, 楼主怎么折腾的, 给代码看看?

我在node-webkit项目里面 客户端访问mysql代码:

var Mysql = {
    pool : null,
    init : function(){
        var mysql  = require('mysql');
        Mysql.pool = mysql.createPool({
            host     : '',
            user     : '',
            password : '',
            database : ''
        });
    },
    searchBySin : function(sin){
        Mysql.pool.query('SELECT * FROM xx WHERE xx = xx', function(err, rows, fields) {
            if (err) throw err;
            console.log(rows[0]);
        }); 
    }
}
这样输出,我希望是类似![希望格式](http://img5.tuchuang.org/uploads/2014/04/13DE07FF-0612-43BF-ACC4-614098367FE0.png.jpg)
但是实际输出是类似json字符串

console.dir(rows); 是不是要这个效果?

一样的.还是乱码,浏览器不管怎么样都ok,命令行里面不管怎么样都是乱

你现在的输出的内容长什么样子的?

无格式,无空格字符串

@scorpio 无空格可以通过 JSON.stringify({a: 'a'}, null, 2) 来转化的

@jiyinyiyong 我是希望和上面那个console.log(http)一样,这样输出是一个对象展开形式

@scorpio 不了解了, 我一般就用到 JSON.stringify 为止了

貌似不是我想要的哈,还是不纠结了…

撸主是想要这样的效果么? node-adodb 大图

binggo,要的就是这样!

JSON.stringify({a:{b:{c:{d:[1,2,3]}}}}, null,2);

@scorpio 楼下的就是正解:

JSON.stringify({a:{b:{c:{d:[1,2,3]}}}}, null,2);
回到顶部