1

我想写入 json 文件。我想写一个我正在传递的对象这是代码

path.exists(logfile_name, function(exists) {
    if (!exists) {
         var jsonObject={ "req": req,
                     "result": result ,
                      "fields": fields } ;

            fs.writeFile(logfile_name ,jsonObject,function(err){
            if(err){
                console.log("error is: " + err)
            }
            else
                console.log("no error found");

             });
    }

});

在 logfile_name 它写 [object Object] 但我希望它这样写 { "req": value, "result": value , "fields": value}

4

1 回答 1

4

如果您不将字符串或缓冲区传递给writeFiletoString则调用您传递的函数。在您的情况下,它返回"[object Object]".

你必须自己转换它:

fs.writeFile(logfile_name, JSON.stringify(jsonObject), function(err){

我建议不要将 JavaScript 对象变量命名为“jsonObject”:它可能会在什么是对象和什么是 JSON(即保存对象序列化的字符串)之间造成混淆。

于 2013-05-14T08:39:28.810 回答