对象的值在控制台中正确显示,但在浏览器中未显示

时间:2017-04-11 10:48:13

标签: node.js

我在浏览器中显示我的对象的值时出现问题,这是我的对象:

websites.js

module.exports = [
    {
        url: 'value1',
        timeout: 15
    },

    {
        url: 'value2',
        timeout: 15
    }
];

这是我的简单服务器:

app.js

var websites = require('./websites.js'),
    http = require('http'),
    server,
    port = process.env.PORT || 3008;

server = http.createServer(function (req, res) {
    var data = "Monitoring the following: \n \n" + websites;
    console.log(websites);
    res.end(data);
}); 

server.listen(port);
console.log('Listening to port %s', port);

console.log(网站)将对象显示为

[{url: 'value1',timeout: 15},{url: 'value2',timeout: 15}]

这很好,但当我浏览http://localhost:3008/时,对象显示为

[object Object],[object Object]

我希望我的对象能够在控制台中显示在浏览器上。我尝试了一些像Object.values()或JSON.parse()这样的东西没有成功。

提前谢谢。

1 个答案:

答案 0 :(得分:0)

要在浏览器的控制台输出中删除[object Object],您应该使用JSON.stringify()将JavaScript值转换为JSON字符串。

您的代码如下:

  

var data ="监控以下内容:\ n \ n" + JSON.stringify(网站);