【问题标题】:Adding nested arrays in JSON file using node.js使用 node.js 在 JSON 文件中添加嵌套数组
【发布时间】:2020-03-05 22:31:49
【问题描述】:

我对 Javascript 和 nodejs 还很陌生。我想要一个 JSON 文件 (results.json),其格式类似于:

开头是:

{
  "name":"John",
  "task":[]
}

然后最终变成这样的嵌套数组:

{
  "name":"John",
  "task":[ ["task1","task2"], ["task3", "task4"] ]
}

我想在每次完成某件事时(在我的情况下是通过按下按钮提交表单时)向“任务”数组推送一个新的任务列表(总是大小为 2)。

例如,在另一个“动作”之后,JSON 文件将如下所示:

{
  "name":"John",
  "task":[ ["task1","task2"], ["task3", "task4"] , ["task5", "task6"] ]
}

注意:“task(1,2,...,6) 仅作为示例,这些将​​是与表单提交对应的其他字符串。

这是我目前在服务器端文件中的内容:

var fs = require('fs')

app.post("/addtask", function(req, res) {
fs.readFile('results.json', function (err, data) {
    var json = JSON.parse(data)
    var newTask1 = req.body.newtask1
    var newTask2 = req.body.newtask2

    //WHAT DO I PUT HERE

    fs.writeFile("results.json", JSON.stringify(json))
})
});

如果我的语法错误或者我对 JSON 文件如何工作的想法有误,请纠正我。

【问题讨论】:

    标签: javascript arrays node.js json


    【解决方案1】:

    只需将数据作为数组推送

    var resObj= {
      "name":"John",
      "task":[]
    }
    
    var newTask1 = "task1";
    var newTask2 = "task2";
    
    resObj.task.push([newTask1,newTask2]);
    
    console.log(resObj);

    【讨论】:

      猜你喜欢
      • 2020-06-27
      • 2016-06-19
      • 2021-09-18
      • 2021-02-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多