我怎样才能打印数组的数据?

时间:2012-12-02 15:33:13

标签: javascript node.js

以下是我的代码:

app.get('/index/:name',function(req, res){
    data = connection.query('SELECT * FROM deneme', function(err, rows, fields){
        if(err) throw err;
        veri = rows;
        return veri;
    });

    console.log(data);

    res.render('index', {
        title: req.params.name,
        para: data
    });
});

当我致电localhost:8080/index/example时,它会返回[object Object] 我想打印数组的数据,我该怎么做?

当我使用带有print_r()函数的php时,我可以这样做。

同时,数组的数据:

Id Name
1  yab
2  sad

4 个答案:

答案 0 :(得分:2)

我认为OP只是想打印数据以进行调试,因为您可以使用以下跨浏览器方式使用JSON打印数据的良好表示:

console.log( JSON.stringify(data, null, 4) );

答案 1 :(得分:0)

这样的事情应该有效:

for (var colName in data) {
    console.log("column " + colName);
    var rows = data[colName];
    for (var i = 0; i < rows.length; i++) {
        console.log(rows[i]);
    }
}

你必须根据自己的需要调整它,这是迭代这些对象的一般方法。

答案 2 :(得分:0)

您需要迭代结果集合并打印属性

      $.each(resultArray, function() {
             this.id;//use this to write id
             this.name;//use this to write name
       });

答案 3 :(得分:0)

要输出到控制台,您可以执行以下操作:

for(var index in data) {
    var item = data[index];
    var output = [];
    for(var field in item) {
        output.push(item[field]);
    }
    console.log(output.join("\t"));
}

对于html中的输出,你可以做类似的事情,但创建实际的HTML节点。也许,比如:

var output = ["<table>"];
for(var index in data) {
    output.push("<tr>");
    var item = data[index];
    for(var field in item) {
        output.push("<td>");
        output.push(item[field]);
        output.push("</td>");
    }
    output.push("</tr>");
    console.log(output.join("\t"));
}
output.push("</table>");
element.innerHTML = output.join("");

我没有在浏览器中尝试过,因此可能会出现一些错误,但应该这样做。

如果您需要更多帮助,请与我们联系。