gpt4 book ai didi

javascript - 如何在 javascript/capserjs 中将 json 对象添加到外部文件中的 json 数组

转载 作者:行者123 更新时间:2023-12-01 03:37:22 26 4
gpt4 key购买 nike

我正在 casperjs 中写入 json 文件,并尝试向其中添加新对象。

json 文件看起来像

 { "visited": [

{
"id": "258b5ee8-9538-4480-8109-58afe741dc2f",
"url": "https://................"
},
{
"id": "5304de97-a970-48f2-9d3b-a750bad5416c",
"url": "https://.............."
},
{
"id": "0fc7a072-7e94-46d6-b38c-9c7aedbdaded",
"url": "https://................."
}]}

添加到数组的代码是

    var data;

if (fs.isFile(FILENAME)) {
data = fs.read(FILENAME);
} else {
data = JSON.stringify({ 'visited': [] });
}

var json = JSON.parse(data);

json.visited.push(visiteddata);

data = JSON.stringify(json, null, '\n');

fs.write(FILENAME, data, "a");

首先在现有的 { "visited": [ ] } 数组下方添加一个新的 { "visited": [ ] } 数组以及前几个对象,随后脚本会中断,因为 json 数组不再是有效的 json。

有人能给我指出正确的方向吗?预先感谢您。

最佳答案

您有一个包含一些数据的 JSON 文件。

你:

  1. 读取该数据
  2. 修改该数据
  3. 将该数据的修改版本附加到原始文件

这意味着文件现在拥有原始数据,紧随其后的是几乎相同的副本,只是添加了一些内容。

您不需要原件。您只需要新版本。

您需要写入到文件,而不是附加到文件。

'a' 标志更改为 'w'

关于javascript - 如何在 javascript/capserjs 中将 json 对象添加到外部文件中的 json 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44158531/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com