簡體   English   中英

附加到外部JSON文件javascript中的對象

[英]Append to object in external JSON file javascript

我有一個外部文件-file.json,其值:

{
    "number": "value"
}

當我運行一個函數時,它將去並用新值重寫文件。 我得到:

{
    "number": "newValue"
}

我想發生的是將數據附加到上一個文件:

{
    "number": "value"
},
{
    "number2": "newValue"
}

我怎樣才能實現這樣的目標? 我想我需要使用.push(),但這給了我未定義的含義。

這是我目前正在使用的代碼。

var urlList = require('./urlList.json');

app.get('/hello', function(req, res){

  var cat = 5;
  catNumber = "number" + cat;
  url = urlList[catNumber];

  request(url, function(error, response, html){
     if(!error){
     var $ = cheerio.load(html);

     var number;
     var json = { };

     $('.content').filter(function(){
        var data = $(this);
        title = data.children().first().text().trim();

        json.number = url;

  })
}

fs.writeFile('file.json', JSON.stringify(json, null, 4), function(err){
  console.log('File successfully written!');
})

如果將JSON作為數組存儲在文件中,如下所示:

[
    {
        "number": "value"
    }
]

然后,您可以將JSON作為數組讀取,然后對其進行修改:

let fs = require('fs');
fs.readFile('./file.json', (err, file) => {
  let jsonArray = JSON.parse(file);

  jsonArray.push({
    number2 : "newValue"
  });

  fs.writeFile('file.json', JSON.stringify(jsonArray));
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM