一尘不染

如何添加到node.js中的现有json文件

node.js

我是Node.js和JavaScript的新手。我有一个results.json文件,希望从脚本中获取结果的运行日志,该脚本从Web提取图像。但是,我当前的脚本仅覆盖现有结果。我如何构建或添加到,results.json以便随后的每个结果都记录在results.json文件中?我希望它是有效的json。

这是一般示例:

var currentSearchResult = someWebSearchResult
var fs = require('fs');
var json = JSON.stringify(['search result: ' + currentSearchResult + ': ', null, "\t");
fs.writeFile("results.json", json);

和result.json:

[
    "search result: currentSearchResult"
]

阅读 332

收藏
2020-07-07

共1个答案

一尘不染

如果希望文件为有效的JSON,则必须打开文件,解析JSON,将新结果附加到数组中,将其转换回字符串,然后再次保存。

var fs = require('fs')

var currentSearchResult = 'example'

fs.readFile('results.json', function (err, data) {
    var json = JSON.parse(data)
    json.push('search result: ' + currentSearchResult)

    fs.writeFile("results.json", JSON.stringify(json))
})
2020-07-07