Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Nodejs参数解析与打印_Node.js_Express - Fatal编程技术网

Node.js Nodejs参数解析与打印

Node.js Nodejs参数解析与打印,node.js,express,Node.js,Express,我正在尝试调试我的移动网站,它正在Nodejs上运行。 在某些方面,有以下几行: var log_line = {accessCount: accessCount, x: x, time: t}; logstream.write(JSON.stringify(log_line)); 假设它们记录用户页面请求的部分内容。路径定义为app.get'/:x?:y?:z?',functionreq,res{ 对于一些用户来说,这很好,但对于日志中的其他用户,我只发现一行写着{accessCount:1

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

var log_line = {accessCount: accessCount, x: x, time: t};
logstream.write(JSON.stringify(log_line));
假设它们记录用户页面请求的部分内容。路径定义为app.get'/:x?:y?:z?',functionreq,res{

对于一些用户来说,这很好,但对于日志中的其他用户,我只发现一行写着{accessCount:1,time:10/10/10}。这怎么可能?它不应该至少在没有任何内容的情况下打印x吗?什么会导致这种效果?

如果x未定义,它将不会被打印:

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

如果您正在寻找解决方案,请将代码更改为

   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};