我正在尝试调试在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
没有任何东西吗?什么可能导致这种影响?
答案 0 :(得分:0)
如果x
为undefined
,则不会打印出来:
> 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};