Nodejs参数解析和打印

时间:2011-10-29 18:27:15

标签: node.js express

我正在尝试调试在Nodejs上运行的移动网站。 在某些方面,有一些方面:

var log_line = {accessCount: accessCount, x: x, time: t};
logstream.write(JSON.stringify(log_line));

假设记录部分用户页面请求。路径定义为app.get('/:x?.:y?.:z?', function(req, res){ )

对于某些用户来说这很好用,但对于日志中的其他用户,我只找到一行“{"accessCount": 1, "time": "10/10/10"}”。这怎么可能?不应该至少打印x没有任何东西吗?什么可能导致这种影响?

2 个答案:

答案 0 :(得分:0)

如果xundefined,则不会打印出来:

> JSON.stringify({x:undefined})
'{}'

答案 1 :(得分:0)

如果您正在寻找解决方案来克服它。将代码更改为

   if (!x) {
    x = "NOT_DEFINED" // or your own place holder value
   }
   var log_line = {accessCount: accessCount, x: x :, time: t};

或更多简洁

   var log_line = {accessCount: accessCount, x: x ? x : "NOT_DEFINED", time: t};